)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"50d23b19e4424adad7079a8b7ea136d754be2e54","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":1,"id":"43597c71_4bbd4367","updated":"2022-01-25 09:17:48.000000000","message":"MACROSAN:recheck","commit_id":"110d901136f5cac689ef2ba593af3a66c2f4c378"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"4ebc03f88eee19042fee8775e421ef5538fc18bd","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":1,"id":"e59612dc_203eb88c","updated":"2022-01-25 09:19:44.000000000","message":"MACROSAN:recheck","commit_id":"110d901136f5cac689ef2ba593af3a66c2f4c378"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"7b8324d3625432f462395fb07178d3c066ef6081","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"a7b1a60e_915f2f03","in_reply_to":"43597c71_4bbd4367","updated":"2022-02-22 03:13:06.000000000","message":"Done","commit_id":"110d901136f5cac689ef2ba593af3a66c2f4c378"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"18a8412a074d8bc7bbe95c140b9739b199a65ff0","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"26d3528a_5ff22d26","in_reply_to":"e59612dc_203eb88c","updated":"2022-06-10 09:52:52.000000000","message":"Done","commit_id":"110d901136f5cac689ef2ba593af3a66c2f4c378"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"6cbb8813a747e1d06a43711399a727b587cb62dc","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"0f20ba81_40e3d755","updated":"2022-03-21 07:55:48.000000000","message":"MACROSAN:recheck","commit_id":"a242608188987ca21b1b33cb4c5bc107b9f57180"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"399afb3468dce2f24bfb21dbee137ffbb0fb3555","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"2565d8f3_e71766c9","updated":"2022-02-22 11:31:03.000000000","message":"MACROSAN:recheck","commit_id":"a242608188987ca21b1b33cb4c5bc107b9f57180"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"f5fbebd0afe2d032edf09a0d53e443212da355f9","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"79991547_46089f2a","updated":"2022-05-20 09:09:08.000000000","message":"MACROSAN:check","commit_id":"1b12070efebb3fd268b685ca3e3bb938ca58ddba"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"4aae8028f64bbd01150daed76567f98d4642e1b1","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"06a4906c_b80b154a","updated":"2022-05-20 09:09:36.000000000","message":"MACROSAN:recheck","commit_id":"1b12070efebb3fd268b685ca3e3bb938ca58ddba"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"aec3447601c016b3d1c968b8bc569bff34671cbb","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"315b316c_4e897c98","updated":"2022-04-24 14:11:29.000000000","message":"MACROSAN:recheck","commit_id":"1b12070efebb3fd268b685ca3e3bb938ca58ddba"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"022851578d115c7c7886f8215cb381a9e9f4e22e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"32f62676_65ff1b37","updated":"2022-05-17 09:00:08.000000000","message":"MACROSAN:recheck","commit_id":"1b12070efebb3fd268b685ca3e3bb938ca58ddba"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"53c6b56f6f2f8be1ddbc8e8ae3e32d9ebbb77955","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"370ffe65_1d4841dd","updated":"2022-04-24 09:24:08.000000000","message":"MACROSAN:recheck","commit_id":"1b12070efebb3fd268b685ca3e3bb938ca58ddba"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"e7795dbac7f5f3fa2837ba978de384224b37d8b6","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"4ee16593_0c8c2837","updated":"2022-06-14 12:16:59.000000000","message":"MACROSAN:recheck","commit_id":"1b12070efebb3fd268b685ca3e3bb938ca58ddba"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"1a3ddc8a2a71e151cff61c77247dd0e7d14527b5","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"69ba48ef_401d5bf4","updated":"2022-06-20 07:01:17.000000000","message":"MACROSAN:recheck","commit_id":"1b12070efebb3fd268b685ca3e3bb938ca58ddba"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"02a87211ef04596ea0c994787e9f24051a6845ce","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"87df1114_08343e67","updated":"2022-06-22 13:41:15.000000000","message":"MACROSAN:recheck","commit_id":"1b12070efebb3fd268b685ca3e3bb938ca58ddba"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"2f9b20f166d1528de7f547588f5438a35336995b","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"c0ea4caf_be444343","updated":"2022-06-20 09:55:12.000000000","message":"MACROSAN:recheck","commit_id":"1b12070efebb3fd268b685ca3e3bb938ca58ddba"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"b50b45822194d87fd073f9e6c8134fc950d4a065","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"c16d0b39_d9b9157c","updated":"2022-04-24 06:56:53.000000000","message":"MACROSAN:recheck","commit_id":"1b12070efebb3fd268b685ca3e3bb938ca58ddba"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"3f564699efecde1e32bb6abaaa3c7fc8835f22f5","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"c647a8ac_d458b0a0","updated":"2022-05-18 03:00:32.000000000","message":"MACROSAN:recheck","commit_id":"1b12070efebb3fd268b685ca3e3bb938ca58ddba"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"18a8412a074d8bc7bbe95c140b9739b199a65ff0","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"d00bc96d_14636c12","updated":"2022-06-10 09:52:52.000000000","message":"MACROSAN:recheck","commit_id":"1b12070efebb3fd268b685ca3e3bb938ca58ddba"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"4a8e8a2b916bfa32fbf650d8dda0797cf7cacb02","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"f995553a_2cba4371","updated":"2022-05-17 08:05:56.000000000","message":"MACROSAN:recheck","commit_id":"1b12070efebb3fd268b685ca3e3bb938ca58ddba"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"fb9eca1cdf4af0270d061d6aa477fb63b2c05117","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"9333951b_a34bd802","updated":"2022-05-19 11:37:32.000000000","message":"recheck","commit_id":"1b12070efebb3fd268b685ca3e3bb938ca58ddba"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"97887256ae014e8b454e0778a507bedede825690","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"192f9936_ab53c1d4","updated":"2022-07-01 07:57:18.000000000","message":"MACROSAN:recheck","commit_id":"28eda4bf6c075bae58e48189ac57dbd128576db9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"bc7e4a7e621d66879062b311e61318d362e3099a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"9c1640d1_e1a2099c","updated":"2022-06-30 12:20:45.000000000","message":"MACROSAN:recheck","commit_id":"28eda4bf6c075bae58e48189ac57dbd128576db9"},{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"c2778d65e421592fcfa4f55578b45fdbca6959b1","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"48c1e042_3a92b090","updated":"2022-07-07 00:18:43.000000000","message":"Thanks for coding this new Manila driver. Please, check the comments.","commit_id":"28eda4bf6c075bae58e48189ac57dbd128576db9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"25471eac9107365254703f31f1f3e32f8caa1baf","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":8,"id":"757e13ac_6924f3b9","in_reply_to":"48c1e042_3a92b090","updated":"2022-07-08 10:00:05.000000000","message":"thanks, I get it. I\u0027ll modify.","commit_id":"28eda4bf6c075bae58e48189ac57dbd128576db9"},{"author":{"_account_id":30002,"name":"Douglas Viroel","email":"viroel@gmail.com","username":"dviroel"},"change_message_id":"bac3818ab289cd8137fb3e795be3a9e6ee26fcdf","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":14,"id":"d5473953_9ea569f9","updated":"2022-08-05 17:17:00.000000000","message":"First look on your patch, I will check other files in a second review. Thanks for proposing the new driver implementation.","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"017e282e4a5b8a3d1c91179a510aaf1233449c98","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":14,"id":"fc73ff0f_e9f20fbf","updated":"2022-07-27 20:38:05.000000000","message":"Hello! I was wondering if you would like to share an update regarding this change. We have the driver deadline coming up tomorrow and if you intend to pursue this change to be merged, we will possibly need an exception. What do you think?","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"6811afcb8e935c084d2f4b1ff01864bc7c82f2a6","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":14,"id":"3f0c62e5_a3ee53bd","updated":"2022-07-18 20:31:31.000000000","message":"Hello! Thank you for contributing this driver and getting the CI in order.\nI had the opportunity to do a first review, please check my comments inline.\n\nAlso, I have a few other points other than the ones I already have mentioned inline:\n- Please update the doc/source/admin/share_back_ends_feature_support_mapping.rst file with the features supported by this driver.\n- The pylint job is failing, could you please take a look at it? You can run it locally to see the failures as well\n- Could you please add more unit test coverage? There are a few files [1][2] that contain lots of statements not being covered by unit tests.\n\n[1] https://296175b041a75992f9e2-f043268e56cbcc99f3170ead76b3a9f9.ssl.cf5.rackcdn.com/825429/14/check/openstack-tox-cover/ba718db/cover/d_70b360362aac019c_macrosan_helper_py.html\n[2] https://296175b041a75992f9e2-f043268e56cbcc99f3170ead76b3a9f9.ssl.cf5.rackcdn.com/825429/14/check/openstack-tox-cover/ba718db/cover/d_70b360362aac019c_rest_helper_py.html","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"0efcbf0e573f766f58eac140380141e60e7fecf3","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":14,"id":"98dece35_fc4c632c","updated":"2022-07-28 12:14:04.000000000","message":"LGTM!","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"3efb15efa3bee4e864b6032a57c148bb31660a3f","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":14,"id":"11f1a033_c7f7120e","updated":"2022-07-18 02:16:41.000000000","message":"MACROSAN:recheck","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"ab46449031e2cd4fa5143f524fcbe4f77ae4089a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":14,"id":"d317138c_93e1d25e","updated":"2022-07-16 07:11:16.000000000","message":"MACROSAN:recheck","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"3696b0ebccd45c07297c4f3b0e6b125b0fbd4d66","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":14,"id":"e4e26678_fdf48835","in_reply_to":"436b53ef_add5d31b","updated":"2022-07-28 14:49:11.000000000","message":"Great, thank you for letting me know. I\u0027ll need to send out an e-mail in the openstack-discuss mailing list [1] saying we are close to the driver deadline, and say that people that need an exception, will need to ask for it. I\u0027ll need to have you answering on that thread and asking for the exception in case you need one (which I believe you will). I\u0027ll also mention it in today\u0027s manila weekly meeting [2]. If you have questions, please reach out!\n\nIf you are not subscribed to openstack-discuss yet, I\u0027d recommend you to do so :)\n\n[1] https://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-discuss\n[2] https://wiki.openstack.org/wiki/Manila/Meetings","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"30476e28a071d2c55887f390e50c2d5749b9ba30","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":14,"id":"ecd8a9e0_58640393","in_reply_to":"e4e26678_fdf48835","updated":"2022-07-28 15:09:28.000000000","message":"Oh, actually I think you are compliant with today\u0027s deadline. Your CI is passing and you have some unit tests and so on. This could be merged until the Z-3 milestone. Please ignore the comment above.","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"393c52594c42b401384ecb17fd965525331cb607","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":14,"id":"436b53ef_add5d31b","in_reply_to":"fc73ff0f_e9f20fbf","updated":"2022-07-28 01:40:49.000000000","message":"yes, I want commit, I had finished driver update, I\u0027m coding unit test now.","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"43d81bfb42101ef587a0367e4f420e3d7222b33d","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":23,"id":"5c7bae3a_d3ae49ce","updated":"2022-08-31 16:17:52.000000000","message":"LGTM, thank you for the changes!","commit_id":"297fbc00f699a4e2ca98c86056b260bf85b71cf8"},{"author":{"_account_id":30002,"name":"Douglas Viroel","email":"viroel@gmail.com","username":"dviroel"},"change_message_id":"0d3d495d5ea84c9baf50389bc9c8dc97c7c72a4b","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":23,"id":"aa9e6f5b_d753191c","updated":"2022-08-31 18:46:19.000000000","message":"Thanks for working hard in this new driver fzzf!\nYou still have some improvements to address, which you can provide in a new change.\nCode LGTM, Macrosan CI is green [1]\n\n[1] http://47.111.113.211:8081/logs/29/825429/23/third-check/macrosan-manila-dhss-false/614f31b/testr_results.html","commit_id":"297fbc00f699a4e2ca98c86056b260bf85b71cf8"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"64939d7187439e52da760f9a7d9610765e764a0c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":23,"id":"77f95e34_defb02f8","updated":"2022-08-31 02:05:59.000000000","message":"Thanks yuehui gan! I\u0027ve noted some issues inline; i would like your responses on these issues; i\u0027m okay with the resolution of these issues in a follow up change if necessary. ","commit_id":"297fbc00f699a4e2ca98c86056b260bf85b71cf8"},{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"24701fb89fb69e76a7b2e3513df27c55c1462eb6","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":23,"id":"14aaf438_af63f59d","updated":"2022-08-22 20:27:51.000000000","message":"lgtm","commit_id":"297fbc00f699a4e2ca98c86056b260bf85b71cf8"}],"manila/share/drivers/macrosan/macrosan_helper.py":[{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"c2778d65e421592fcfa4f55578b45fdbca6959b1","unresolved":true,"context_lines":[{"line_number":51,"context_line":"            if ((nfs_service[\u0027nfs3Status\u0027] \u003d\u003d 0) or\r"},{"line_number":52,"context_line":"                    (nfs_service[\u0027nfs4Status\u0027] \u003d\u003d 0)):\r"},{"line_number":53,"context_line":"                self.rest._config_nfs_service()\r"},{"line_number":54,"context_line":"            else:\r"},{"line_number":55,"context_line":"                pass\r"},{"line_number":56,"context_line":"        else:\r"},{"line_number":57,"context_line":"            raise exception.InvalidHost(\r"},{"line_number":58,"context_line":"                reason\u003d_(\"nfs service exception.Please check\"))\r"}],"source_content_type":"text/x-python","patch_set":8,"id":"862f7402_d7c0ffeb","line":55,"range":{"start_line":54,"start_character":11,"end_line":55,"end_character":20},"updated":"2022-07-07 00:18:43.000000000","message":"why is it required ?","commit_id":"28eda4bf6c075bae58e48189ac57dbd128576db9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"366c04038ca3c7c7712e24f70204e38297202a5d","unresolved":false,"context_lines":[{"line_number":51,"context_line":"            if ((nfs_service[\u0027nfs3Status\u0027] \u003d\u003d 0) or\r"},{"line_number":52,"context_line":"                    (nfs_service[\u0027nfs4Status\u0027] \u003d\u003d 0)):\r"},{"line_number":53,"context_line":"                self.rest._config_nfs_service()\r"},{"line_number":54,"context_line":"            else:\r"},{"line_number":55,"context_line":"                pass\r"},{"line_number":56,"context_line":"        else:\r"},{"line_number":57,"context_line":"            raise exception.InvalidHost(\r"},{"line_number":58,"context_line":"                reason\u003d_(\"nfs service exception.Please check\"))\r"}],"source_content_type":"text/x-python","patch_set":8,"id":"30389c9e_8bd9d182","line":55,"range":{"start_line":54,"start_character":11,"end_line":55,"end_character":20},"in_reply_to":"862f7402_d7c0ffeb","updated":"2022-07-13 09:24:16.000000000","message":"Done","commit_id":"28eda4bf6c075bae58e48189ac57dbd128576db9"},{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"c2778d65e421592fcfa4f55578b45fdbca6959b1","unresolved":true,"context_lines":[{"line_number":53,"context_line":"                self.rest._config_nfs_service()\r"},{"line_number":54,"context_line":"            else:\r"},{"line_number":55,"context_line":"                pass\r"},{"line_number":56,"context_line":"        else:\r"},{"line_number":57,"context_line":"            raise exception.InvalidHost(\r"},{"line_number":58,"context_line":"                reason\u003d_(\"nfs service exception.Please check\"))\r"},{"line_number":59,"context_line":"\r"},{"line_number":60,"context_line":"        cifs_status \u003d self.rest._get_cifs_service_status()\r"},{"line_number":61,"context_line":"        if cifs_status \u003d\u003d -1:\r"}],"source_content_type":"text/x-python","patch_set":8,"id":"57b1c99c_4cc45e7a","line":58,"range":{"start_line":56,"start_character":8,"end_line":58,"end_character":63},"updated":"2022-07-07 00:18:43.000000000","message":"What if checking the exception first ? letting to the reader the scenario where the code does not work more clear:\n\n\ndef check_..\n  nfs_service \u003d self.rest._get_nfs_service_status()\n  if nfs_service[\u0027serviceStatus\u0027] not in [0,1,2]:\n    raise exception.InvalidHost(\n                  reason\u003d_(\"nfs service exception.Please check\"))\n  elif \u003d\u003d 0:\n  elif \u003d\u003d 2:\n  else:","commit_id":"28eda4bf6c075bae58e48189ac57dbd128576db9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"366c04038ca3c7c7712e24f70204e38297202a5d","unresolved":false,"context_lines":[{"line_number":53,"context_line":"                self.rest._config_nfs_service()\r"},{"line_number":54,"context_line":"            else:\r"},{"line_number":55,"context_line":"                pass\r"},{"line_number":56,"context_line":"        else:\r"},{"line_number":57,"context_line":"            raise exception.InvalidHost(\r"},{"line_number":58,"context_line":"                reason\u003d_(\"nfs service exception.Please check\"))\r"},{"line_number":59,"context_line":"\r"},{"line_number":60,"context_line":"        cifs_status \u003d self.rest._get_cifs_service_status()\r"},{"line_number":61,"context_line":"        if cifs_status \u003d\u003d -1:\r"}],"source_content_type":"text/x-python","patch_set":8,"id":"4451aa1f_c245e8f2","line":58,"range":{"start_line":56,"start_character":8,"end_line":58,"end_character":63},"in_reply_to":"57b1c99c_4cc45e7a","updated":"2022-07-13 09:24:16.000000000","message":"Done","commit_id":"28eda4bf6c075bae58e48189ac57dbd128576db9"},{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"c2778d65e421592fcfa4f55578b45fdbca6959b1","unresolved":true,"context_lines":[{"line_number":68,"context_line":"                self.rest._config_cifs_service()\r"},{"line_number":69,"context_line":"        elif cifs_status \u003d\u003d 2:\r"},{"line_number":70,"context_line":"            self.rest._config_cifs_service()\r"},{"line_number":71,"context_line":"        elif cifs_status \u003d\u003d -3:\r"},{"line_number":72,"context_line":"            raise exception.InvalidHost(\r"},{"line_number":73,"context_line":"                reason\u003d_(\"Cifs service exception.Please check\"))\r"},{"line_number":74,"context_line":"        elif cifs_status \u003d\u003d 1:\r"},{"line_number":75,"context_line":"            pass\r"},{"line_number":76,"context_line":"\r"}],"source_content_type":"text/x-python","patch_set":8,"id":"997d2f1d_70a98466","line":73,"range":{"start_line":71,"start_character":12,"end_line":73,"end_character":64},"updated":"2022-07-07 00:18:43.000000000","message":"same about making the bad case first","commit_id":"28eda4bf6c075bae58e48189ac57dbd128576db9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"366c04038ca3c7c7712e24f70204e38297202a5d","unresolved":false,"context_lines":[{"line_number":68,"context_line":"                self.rest._config_cifs_service()\r"},{"line_number":69,"context_line":"        elif cifs_status \u003d\u003d 2:\r"},{"line_number":70,"context_line":"            self.rest._config_cifs_service()\r"},{"line_number":71,"context_line":"        elif cifs_status \u003d\u003d -3:\r"},{"line_number":72,"context_line":"            raise exception.InvalidHost(\r"},{"line_number":73,"context_line":"                reason\u003d_(\"Cifs service exception.Please check\"))\r"},{"line_number":74,"context_line":"        elif cifs_status \u003d\u003d 1:\r"},{"line_number":75,"context_line":"            pass\r"},{"line_number":76,"context_line":"\r"}],"source_content_type":"text/x-python","patch_set":8,"id":"ab12b61e_a6a21897","line":73,"range":{"start_line":71,"start_character":12,"end_line":73,"end_character":64},"in_reply_to":"997d2f1d_70a98466","updated":"2022-07-13 09:24:16.000000000","message":"Done","commit_id":"28eda4bf6c075bae58e48189ac57dbd128576db9"},{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"c2778d65e421592fcfa4f55578b45fdbca6959b1","unresolved":true,"context_lines":[{"line_number":71,"context_line":"        elif cifs_status \u003d\u003d -3:\r"},{"line_number":72,"context_line":"            raise exception.InvalidHost(\r"},{"line_number":73,"context_line":"                reason\u003d_(\"Cifs service exception.Please check\"))\r"},{"line_number":74,"context_line":"        elif cifs_status \u003d\u003d 1:\r"},{"line_number":75,"context_line":"            pass\r"},{"line_number":76,"context_line":"\r"},{"line_number":77,"context_line":"    def do_setup(self):\r"},{"line_number":78,"context_line":"        \"\"\"get token\"\"\"\r"}],"source_content_type":"text/x-python","patch_set":8,"id":"394eb59f_a1a1f1c3","line":75,"range":{"start_line":74,"start_character":8,"end_line":75,"end_character":16},"updated":"2022-07-07 00:18:43.000000000","message":"why is it required ?","commit_id":"28eda4bf6c075bae58e48189ac57dbd128576db9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"366c04038ca3c7c7712e24f70204e38297202a5d","unresolved":false,"context_lines":[{"line_number":71,"context_line":"        elif cifs_status \u003d\u003d -3:\r"},{"line_number":72,"context_line":"            raise exception.InvalidHost(\r"},{"line_number":73,"context_line":"                reason\u003d_(\"Cifs service exception.Please check\"))\r"},{"line_number":74,"context_line":"        elif cifs_status \u003d\u003d 1:\r"},{"line_number":75,"context_line":"            pass\r"},{"line_number":76,"context_line":"\r"},{"line_number":77,"context_line":"    def do_setup(self):\r"},{"line_number":78,"context_line":"        \"\"\"get token\"\"\"\r"}],"source_content_type":"text/x-python","patch_set":8,"id":"a550875b_02f6f1d2","line":75,"range":{"start_line":74,"start_character":8,"end_line":75,"end_character":16},"in_reply_to":"394eb59f_a1a1f1c3","updated":"2022-07-13 09:24:16.000000000","message":"Done","commit_id":"28eda4bf6c075bae58e48189ac57dbd128576db9"},{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"c2778d65e421592fcfa4f55578b45fdbca6959b1","unresolved":true,"context_lines":[{"line_number":85,"context_line":"        share_size \u003d \u0027\u0027.join((str(share[\u0027size\u0027]), \u0027GB\u0027))\r"},{"line_number":86,"context_line":"\r"},{"line_number":87,"context_line":"        # check pool available\r"},{"line_number":88,"context_line":"        result \u003d self.rest._get_all_pool()\r"},{"line_number":89,"context_line":"        pool_info \u003d self.rest._find_pool_info(pool_name, result)\r"},{"line_number":90,"context_line":"        if not pool_info:\r"},{"line_number":91,"context_line":"            msg \u003d (_(\"Can\u0027t find the pool info by pool name:%s.\") % pool_name)\r"}],"source_content_type":"text/x-python","patch_set":8,"id":"9eb0b4ae_5ea99f6c","line":88,"range":{"start_line":88,"start_character":8,"end_line":88,"end_character":15},"updated":"2022-07-07 00:18:43.000000000","message":"nit: available_pools, storage_pools,","commit_id":"28eda4bf6c075bae58e48189ac57dbd128576db9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"366c04038ca3c7c7712e24f70204e38297202a5d","unresolved":false,"context_lines":[{"line_number":85,"context_line":"        share_size \u003d \u0027\u0027.join((str(share[\u0027size\u0027]), \u0027GB\u0027))\r"},{"line_number":86,"context_line":"\r"},{"line_number":87,"context_line":"        # check pool available\r"},{"line_number":88,"context_line":"        result \u003d self.rest._get_all_pool()\r"},{"line_number":89,"context_line":"        pool_info \u003d self.rest._find_pool_info(pool_name, result)\r"},{"line_number":90,"context_line":"        if not pool_info:\r"},{"line_number":91,"context_line":"            msg \u003d (_(\"Can\u0027t find the pool info by pool name:%s.\") % pool_name)\r"}],"source_content_type":"text/x-python","patch_set":8,"id":"510ca89f_e595cd2f","line":88,"range":{"start_line":88,"start_character":8,"end_line":88,"end_character":15},"in_reply_to":"9eb0b4ae_5ea99f6c","updated":"2022-07-13 09:24:16.000000000","message":"Done","commit_id":"28eda4bf6c075bae58e48189ac57dbd128576db9"},{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"c2778d65e421592fcfa4f55578b45fdbca6959b1","unresolved":true,"context_lines":[{"line_number":108,"context_line":"            group_name \u003d \u0027manilanobody\u0027\r"},{"line_number":109,"context_line":"            ret \u003d self._ensure_user(user_name, user_passwd, group_name)\r"},{"line_number":110,"context_line":"            if ret is True:\r"},{"line_number":111,"context_line":"                rw_list \u003d [user_name]\r"},{"line_number":112,"context_line":"                rw_list_type \u003d [\u00270\u0027]\r"},{"line_number":113,"context_line":"                self.rest._create_cifs_share(share_name\u003dshare_name,\r"},{"line_number":114,"context_line":"                                             share_path\u003dshare_path,\r"},{"line_number":115,"context_line":"                                             rw_list\u003drw_list,\r"},{"line_number":116,"context_line":"                                             rw_list_type\u003drw_list_type)\r"},{"line_number":117,"context_line":"            else:\r"},{"line_number":118,"context_line":"                raise exception.InvalidShare(\r"},{"line_number":119,"context_line":"                    reason\u003d(_(\r"}],"source_content_type":"text/x-python","patch_set":8,"id":"52ca250d_00acc405","line":116,"range":{"start_line":111,"start_character":16,"end_line":116,"end_character":71},"updated":"2022-07-07 00:18:43.000000000","message":"You could do the same as line #90, treat the exception first, then follow the code without requiring add tab and if/else:\n\nif not ret:\n  raise exception...\n  \nrw_list \u003d [user_name]\nrw_list_type \u003d [\u00270\u0027]\n...","commit_id":"28eda4bf6c075bae58e48189ac57dbd128576db9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"366c04038ca3c7c7712e24f70204e38297202a5d","unresolved":false,"context_lines":[{"line_number":108,"context_line":"            group_name \u003d \u0027manilanobody\u0027\r"},{"line_number":109,"context_line":"            ret \u003d self._ensure_user(user_name, user_passwd, group_name)\r"},{"line_number":110,"context_line":"            if ret is True:\r"},{"line_number":111,"context_line":"                rw_list \u003d [user_name]\r"},{"line_number":112,"context_line":"                rw_list_type \u003d [\u00270\u0027]\r"},{"line_number":113,"context_line":"                self.rest._create_cifs_share(share_name\u003dshare_name,\r"},{"line_number":114,"context_line":"                                             share_path\u003dshare_path,\r"},{"line_number":115,"context_line":"                                             rw_list\u003drw_list,\r"},{"line_number":116,"context_line":"                                             rw_list_type\u003drw_list_type)\r"},{"line_number":117,"context_line":"            else:\r"},{"line_number":118,"context_line":"                raise exception.InvalidShare(\r"},{"line_number":119,"context_line":"                    reason\u003d(_(\r"}],"source_content_type":"text/x-python","patch_set":8,"id":"eabf9151_111ec24c","line":116,"range":{"start_line":111,"start_character":16,"end_line":116,"end_character":71},"in_reply_to":"52ca250d_00acc405","updated":"2022-07-13 09:24:16.000000000","message":"Done","commit_id":"28eda4bf6c075bae58e48189ac57dbd128576db9"},{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"c2778d65e421592fcfa4f55578b45fdbca6959b1","unresolved":true,"context_lines":[{"line_number":120,"context_line":"                        \u0027Failed to create share %(share)s.Reason:\u0027\r"},{"line_number":121,"context_line":"                        \u0027username %(user_name)s error.\u0027)\r"},{"line_number":122,"context_line":"                        % {\u0027share\u0027: share_name, \u0027user_name\u0027: user_name}))\r"},{"line_number":123,"context_line":"        location \u003d self._get_location_path(share_path\u003dshare_path,\r"},{"line_number":124,"context_line":"                                           share_name\u003dshare_name,\r"},{"line_number":125,"context_line":"                                           share_proto\u003dproto)\r"},{"line_number":126,"context_line":"        return location\r"},{"line_number":127,"context_line":"\r"},{"line_number":128,"context_line":"    def delete_share(self, share, share_server\u003dNone):\r"}],"source_content_type":"text/x-python","patch_set":8,"id":"ad5ee194_37716846","line":125,"range":{"start_line":123,"start_character":44,"end_line":125,"end_character":60},"updated":"2022-07-07 00:18:43.000000000","message":"the \"_get_location_path\" isn\u0027t defined as kwargs parameters, you don\u0027t need to be redundant passing as kwargs here.","commit_id":"28eda4bf6c075bae58e48189ac57dbd128576db9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"366c04038ca3c7c7712e24f70204e38297202a5d","unresolved":false,"context_lines":[{"line_number":120,"context_line":"                        \u0027Failed to create share %(share)s.Reason:\u0027\r"},{"line_number":121,"context_line":"                        \u0027username %(user_name)s error.\u0027)\r"},{"line_number":122,"context_line":"                        % {\u0027share\u0027: share_name, \u0027user_name\u0027: user_name}))\r"},{"line_number":123,"context_line":"        location \u003d self._get_location_path(share_path\u003dshare_path,\r"},{"line_number":124,"context_line":"                                           share_name\u003dshare_name,\r"},{"line_number":125,"context_line":"                                           share_proto\u003dproto)\r"},{"line_number":126,"context_line":"        return location\r"},{"line_number":127,"context_line":"\r"},{"line_number":128,"context_line":"    def delete_share(self, share, share_server\u003dNone):\r"}],"source_content_type":"text/x-python","patch_set":8,"id":"5a9ff2aa_6c32469f","line":125,"range":{"start_line":123,"start_character":44,"end_line":125,"end_character":60},"in_reply_to":"ad5ee194_37716846","updated":"2022-07-13 09:24:16.000000000","message":"Done","commit_id":"28eda4bf6c075bae58e48189ac57dbd128576db9"},{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"c2778d65e421592fcfa4f55578b45fdbca6959b1","unresolved":true,"context_lines":[{"line_number":130,"context_line":"        pool, share_name, proto \u003d self._get_share_instance_pnp(share)\r"},{"line_number":131,"context_line":"        share_path \u003d self._generate_share_path(share_name)\r"},{"line_number":132,"context_line":"\r"},{"line_number":133,"context_line":"        if proto \u003d\u003d \u0027NFS\u0027:\r"},{"line_number":134,"context_line":"            share_backend \u003d self.rest._get_nfs_share(share_path)\r"},{"line_number":135,"context_line":"            if not share_backend:\r"},{"line_number":136,"context_line":"                LOG.warning(\u0027Share not found.share name:%s.\u0027, share_name)\r"},{"line_number":137,"context_line":"                filesystem \u003d self.rest._get_filesystem(share_name)\r"},{"line_number":138,"context_line":"                if filesystem:\r"},{"line_number":139,"context_line":"                    self.rest._delete_filesystem(share_name)\r"},{"line_number":140,"context_line":"                    return\r"},{"line_number":141,"context_line":"                else:\r"},{"line_number":142,"context_line":"                    pass\r"},{"line_number":143,"context_line":"            else:\r"},{"line_number":144,"context_line":"                self.rest._delete_nfs_share(share_path)\r"},{"line_number":145,"context_line":"                self.rest._delete_filesystem_dir(share_path)\r"},{"line_number":146,"context_line":"                self.rest._delete_filesystem(share_name)\r"},{"line_number":147,"context_line":"        else:\r"},{"line_number":148,"context_line":"            share_backend \u003d self.rest._get_cifs_share(share_path)\r"},{"line_number":149,"context_line":"            if not share_backend:\r"},{"line_number":150,"context_line":"                LOG.warning(\u0027Share not found.share name:%s.\u0027, share_name)\r"},{"line_number":151,"context_line":"                filesystem \u003d self.rest._get_filesystem(share_name)\r"},{"line_number":152,"context_line":"                if filesystem:\r"},{"line_number":153,"context_line":"                    self.rest._delete_filesystem(share_name)\r"},{"line_number":154,"context_line":"                    return\r"},{"line_number":155,"context_line":"                else:\r"},{"line_number":156,"context_line":"                    pass\r"},{"line_number":157,"context_line":"            else:\r"},{"line_number":158,"context_line":"                self.rest._delete_cifs_share(share_name, share_path)\r"},{"line_number":159,"context_line":"                self.rest._delete_filesystem_dir(share_path)\r"},{"line_number":160,"context_line":"                self.rest._delete_filesystem(share_name)\r"},{"line_number":161,"context_line":"\r"},{"line_number":162,"context_line":"    def extend_share(self, share, new_size, share_server):\r"},{"line_number":163,"context_line":"        \"\"\"Extend share\"\"\"\r"}],"source_content_type":"text/x-python","patch_set":8,"id":"95bae8a1_595af3ad","line":160,"range":{"start_line":133,"start_character":4,"end_line":160,"end_character":56},"updated":"2022-07-07 00:18:43.000000000","message":"repeated flow, since NFS and CIFS are almost the same. The flow has 28lines, and 3 tabs levels. Writing it without repeated lines (14lines and 2 levels):\n\nshare_backend \u003d (self.rest._get_nfs_share(share_name, share_path) if proto \u003d\u003d \u0027NFS\u0027 else self.rest._get_cifs_share(share_path))\nif not share_backend:\n  LOG.warning(\u0027Share not found.share name:%s.\u0027, share_name)\n  filesystem \u003d self.rest._get_filesystem(share_name)\n  if filesystem:\n    self.rest._delete_filesystem(share_name)\nelse:  \n  if proto \u003d\u003d \u0027NFS:\n    self.rest._delete_cifs_share(share_name, share_path)\n  else: \n    self.rest._delete_nfs_share(share_path)\n  self.rest._delete_filesystem_dir(share_path)\n  self.rest._delete_filesystem(share_name)","commit_id":"28eda4bf6c075bae58e48189ac57dbd128576db9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"366c04038ca3c7c7712e24f70204e38297202a5d","unresolved":false,"context_lines":[{"line_number":130,"context_line":"        pool, share_name, proto \u003d self._get_share_instance_pnp(share)\r"},{"line_number":131,"context_line":"        share_path \u003d self._generate_share_path(share_name)\r"},{"line_number":132,"context_line":"\r"},{"line_number":133,"context_line":"        if proto \u003d\u003d \u0027NFS\u0027:\r"},{"line_number":134,"context_line":"            share_backend \u003d self.rest._get_nfs_share(share_path)\r"},{"line_number":135,"context_line":"            if not share_backend:\r"},{"line_number":136,"context_line":"                LOG.warning(\u0027Share not found.share name:%s.\u0027, share_name)\r"},{"line_number":137,"context_line":"                filesystem \u003d self.rest._get_filesystem(share_name)\r"},{"line_number":138,"context_line":"                if filesystem:\r"},{"line_number":139,"context_line":"                    self.rest._delete_filesystem(share_name)\r"},{"line_number":140,"context_line":"                    return\r"},{"line_number":141,"context_line":"                else:\r"},{"line_number":142,"context_line":"                    pass\r"},{"line_number":143,"context_line":"            else:\r"},{"line_number":144,"context_line":"                self.rest._delete_nfs_share(share_path)\r"},{"line_number":145,"context_line":"                self.rest._delete_filesystem_dir(share_path)\r"},{"line_number":146,"context_line":"                self.rest._delete_filesystem(share_name)\r"},{"line_number":147,"context_line":"        else:\r"},{"line_number":148,"context_line":"            share_backend \u003d self.rest._get_cifs_share(share_path)\r"},{"line_number":149,"context_line":"            if not share_backend:\r"},{"line_number":150,"context_line":"                LOG.warning(\u0027Share not found.share name:%s.\u0027, share_name)\r"},{"line_number":151,"context_line":"                filesystem \u003d self.rest._get_filesystem(share_name)\r"},{"line_number":152,"context_line":"                if filesystem:\r"},{"line_number":153,"context_line":"                    self.rest._delete_filesystem(share_name)\r"},{"line_number":154,"context_line":"                    return\r"},{"line_number":155,"context_line":"                else:\r"},{"line_number":156,"context_line":"                    pass\r"},{"line_number":157,"context_line":"            else:\r"},{"line_number":158,"context_line":"                self.rest._delete_cifs_share(share_name, share_path)\r"},{"line_number":159,"context_line":"                self.rest._delete_filesystem_dir(share_path)\r"},{"line_number":160,"context_line":"                self.rest._delete_filesystem(share_name)\r"},{"line_number":161,"context_line":"\r"},{"line_number":162,"context_line":"    def extend_share(self, share, new_size, share_server):\r"},{"line_number":163,"context_line":"        \"\"\"Extend share\"\"\"\r"}],"source_content_type":"text/x-python","patch_set":8,"id":"ba0dce78_9c94bcd4","line":160,"range":{"start_line":133,"start_character":4,"end_line":160,"end_character":56},"in_reply_to":"95bae8a1_595af3ad","updated":"2022-07-13 09:24:16.000000000","message":"Done","commit_id":"28eda4bf6c075bae58e48189ac57dbd128576db9"},{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"c2778d65e421592fcfa4f55578b45fdbca6959b1","unresolved":true,"context_lines":[{"line_number":163,"context_line":"        \"\"\"Extend share\"\"\"\r"},{"line_number":164,"context_line":"        pool, share_name, proto \u003d self._get_share_instance_pnp(share)\r"},{"line_number":165,"context_line":"        share_path \u003d self._generate_share_path(share_name)\r"},{"line_number":166,"context_line":"        share_backend \u003d None\r"},{"line_number":167,"context_line":"        if proto \u003d\u003d \u0027NFS\u0027:\r"},{"line_number":168,"context_line":"            share_backend \u003d self.rest._get_nfs_share(share_path)\r"},{"line_number":169,"context_line":"        else:\r"},{"line_number":170,"context_line":"            share_backend \u003d self.rest._get_cifs_share(share_path)\r"},{"line_number":171,"context_line":"        if not share_backend:\r"},{"line_number":172,"context_line":"            msg \u003d (_(\"Can\u0027t find the share by share name:%s.\") % share_name)\r"},{"line_number":173,"context_line":"            LOG.error(msg)\r"}],"source_content_type":"text/x-python","patch_set":8,"id":"c25f48ef_d6fd3798","line":170,"range":{"start_line":166,"start_character":8,"end_line":170,"end_character":65},"updated":"2022-07-07 00:18:43.000000000","message":"Less code pythonic as one sentence:\nshare_backend \u003d (self.rest._get_nfs_share(share_path) if proto \u003d\u003d \u0027NFS\u0027 else self.rest._get_cifs_share(share_path))","commit_id":"28eda4bf6c075bae58e48189ac57dbd128576db9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"366c04038ca3c7c7712e24f70204e38297202a5d","unresolved":false,"context_lines":[{"line_number":163,"context_line":"        \"\"\"Extend share\"\"\"\r"},{"line_number":164,"context_line":"        pool, share_name, proto \u003d self._get_share_instance_pnp(share)\r"},{"line_number":165,"context_line":"        share_path \u003d self._generate_share_path(share_name)\r"},{"line_number":166,"context_line":"        share_backend \u003d None\r"},{"line_number":167,"context_line":"        if proto \u003d\u003d \u0027NFS\u0027:\r"},{"line_number":168,"context_line":"            share_backend \u003d self.rest._get_nfs_share(share_path)\r"},{"line_number":169,"context_line":"        else:\r"},{"line_number":170,"context_line":"            share_backend \u003d self.rest._get_cifs_share(share_path)\r"},{"line_number":171,"context_line":"        if not share_backend:\r"},{"line_number":172,"context_line":"            msg \u003d (_(\"Can\u0027t find the share by share name:%s.\") % share_name)\r"},{"line_number":173,"context_line":"            LOG.error(msg)\r"}],"source_content_type":"text/x-python","patch_set":8,"id":"51b739b7_4f277fde","line":170,"range":{"start_line":166,"start_character":8,"end_line":170,"end_character":65},"in_reply_to":"c25f48ef_d6fd3798","updated":"2022-07-13 09:24:16.000000000","message":"Done","commit_id":"28eda4bf6c075bae58e48189ac57dbd128576db9"},{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"c2778d65e421592fcfa4f55578b45fdbca6959b1","unresolved":true,"context_lines":[{"line_number":181,"context_line":"            raise exception.InvalidShare(reason\u003dmsg)\r"},{"line_number":182,"context_line":"\r"},{"line_number":183,"context_line":"        # new_size unit is GB\r"},{"line_number":184,"context_line":"        current_size \u003d self._unit_convert_toGB(fs_info[\u0027quotaStatus\u0027])\r"},{"line_number":185,"context_line":"        if current_size \u003e\u003d new_size:\r"},{"line_number":186,"context_line":"            msg \u003d (_(\"New size for extend must be larger \"\r"},{"line_number":187,"context_line":"                     \"than current size. \"\r"},{"line_number":188,"context_line":"                     \"(current:%(cur_size)s,new:%(new_size)s).\")\r"},{"line_number":189,"context_line":"                   % {\u0027cur_size\u0027: current_size, \u0027new_size\u0027: new_size})\r"},{"line_number":190,"context_line":"            LOG.error(msg)\r"},{"line_number":191,"context_line":"            raise exception.InvalidInput(reason\u003dmsg)\r"},{"line_number":192,"context_line":"        # size param need unit\r"},{"line_number":193,"context_line":"        new_size_unit \u003d \u0027\u0027.join((str(new_size), \u0027GB\u0027))\r"},{"line_number":194,"context_line":"        self.rest._update_share_size(share_name, new_size_unit)\r"}],"source_content_type":"text/x-python","patch_set":8,"id":"d52e967b_c5226ebe","line":191,"range":{"start_line":184,"start_character":8,"end_line":191,"end_character":52},"updated":"2022-07-07 00:18:43.000000000","message":"Is there any storage logic required here ? Indeed, the Manila API won\u0027t let the request get here when the new size is smaller than the current one [1].\n\n[1] https://github.com/openstack/manila/blob/master/manila/share/api.py#L2307","commit_id":"28eda4bf6c075bae58e48189ac57dbd128576db9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"366c04038ca3c7c7712e24f70204e38297202a5d","unresolved":false,"context_lines":[{"line_number":181,"context_line":"            raise exception.InvalidShare(reason\u003dmsg)\r"},{"line_number":182,"context_line":"\r"},{"line_number":183,"context_line":"        # new_size unit is GB\r"},{"line_number":184,"context_line":"        current_size \u003d self._unit_convert_toGB(fs_info[\u0027quotaStatus\u0027])\r"},{"line_number":185,"context_line":"        if current_size \u003e\u003d new_size:\r"},{"line_number":186,"context_line":"            msg \u003d (_(\"New size for extend must be larger \"\r"},{"line_number":187,"context_line":"                     \"than current size. \"\r"},{"line_number":188,"context_line":"                     \"(current:%(cur_size)s,new:%(new_size)s).\")\r"},{"line_number":189,"context_line":"                   % {\u0027cur_size\u0027: current_size, \u0027new_size\u0027: new_size})\r"},{"line_number":190,"context_line":"            LOG.error(msg)\r"},{"line_number":191,"context_line":"            raise exception.InvalidInput(reason\u003dmsg)\r"},{"line_number":192,"context_line":"        # size param need unit\r"},{"line_number":193,"context_line":"        new_size_unit \u003d \u0027\u0027.join((str(new_size), \u0027GB\u0027))\r"},{"line_number":194,"context_line":"        self.rest._update_share_size(share_name, new_size_unit)\r"}],"source_content_type":"text/x-python","patch_set":8,"id":"e07f0f29_86116edc","line":191,"range":{"start_line":184,"start_character":8,"end_line":191,"end_character":52},"in_reply_to":"d52e967b_c5226ebe","updated":"2022-07-13 09:24:16.000000000","message":"Done","commit_id":"28eda4bf6c075bae58e48189ac57dbd128576db9"},{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"c2778d65e421592fcfa4f55578b45fdbca6959b1","unresolved":true,"context_lines":[{"line_number":198,"context_line":"        pool, share_name, proto \u003d self._get_share_instance_pnp(share)\r"},{"line_number":199,"context_line":"        share_path \u003d self._generate_share_path(share_name)\r"},{"line_number":200,"context_line":"\r"},{"line_number":201,"context_line":"        if proto \u003d\u003d \u0027NFS\u0027:\r"},{"line_number":202,"context_line":"            share_backend \u003d self.rest._get_nfs_share(share_path)\r"},{"line_number":203,"context_line":"        else:\r"},{"line_number":204,"context_line":"            share_backend \u003d self.rest._get_cifs_share(share_path)\r"},{"line_number":205,"context_line":"        if not share_backend:\r"},{"line_number":206,"context_line":"            msg \u003d (_(\"Can\u0027t find the share by share name:%s.\") % share_name)\r"},{"line_number":207,"context_line":"            LOG.error(msg)\r"}],"source_content_type":"text/x-python","patch_set":8,"id":"e350de33_75d5c152","line":204,"range":{"start_line":201,"start_character":8,"end_line":204,"end_character":65},"updated":"2022-07-07 00:18:43.000000000","message":"same about one pythonic sentence","commit_id":"28eda4bf6c075bae58e48189ac57dbd128576db9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"366c04038ca3c7c7712e24f70204e38297202a5d","unresolved":false,"context_lines":[{"line_number":198,"context_line":"        pool, share_name, proto \u003d self._get_share_instance_pnp(share)\r"},{"line_number":199,"context_line":"        share_path \u003d self._generate_share_path(share_name)\r"},{"line_number":200,"context_line":"\r"},{"line_number":201,"context_line":"        if proto \u003d\u003d \u0027NFS\u0027:\r"},{"line_number":202,"context_line":"            share_backend \u003d self.rest._get_nfs_share(share_path)\r"},{"line_number":203,"context_line":"        else:\r"},{"line_number":204,"context_line":"            share_backend \u003d self.rest._get_cifs_share(share_path)\r"},{"line_number":205,"context_line":"        if not share_backend:\r"},{"line_number":206,"context_line":"            msg \u003d (_(\"Can\u0027t find the share by share name:%s.\") % share_name)\r"},{"line_number":207,"context_line":"            LOG.error(msg)\r"}],"source_content_type":"text/x-python","patch_set":8,"id":"30880eff_97a78bd0","line":204,"range":{"start_line":201,"start_character":8,"end_line":204,"end_character":65},"in_reply_to":"e350de33_75d5c152","updated":"2022-07-13 09:24:16.000000000","message":"Done","commit_id":"28eda4bf6c075bae58e48189ac57dbd128576db9"},{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"c2778d65e421592fcfa4f55578b45fdbca6959b1","unresolved":true,"context_lines":[{"line_number":216,"context_line":"\r"},{"line_number":217,"context_line":"        current_size \u003d self._unit_convert_toGB(fs_info[\u0027quotaStatus\u0027])\r"},{"line_number":218,"context_line":"        if current_size \u003c\u003d new_size:\r"},{"line_number":219,"context_line":"            msg \u003d (_(\"New size for shrink must be less\"\r"},{"line_number":220,"context_line":"                     \"than current size.\"\r"},{"line_number":221,"context_line":"                     \"(current:%(cur_size)s,new:%(new_size)s).\")\r"},{"line_number":222,"context_line":"                   % {\u0027cur_size\u0027: current_size, \u0027new_size\u0027: new_size})\r"},{"line_number":223,"context_line":"            LOG.error(msg)\r"},{"line_number":224,"context_line":"            raise exception.InvalidInput(reason\u003dmsg)\r"},{"line_number":225,"context_line":"        new_size_unit \u003d \u0027\u0027.join((str(new_size), \u0027GB\u0027))\r"},{"line_number":226,"context_line":"        self.rest._update_share_size(share_name, new_size_unit)\r"},{"line_number":227,"context_line":"\r"}],"source_content_type":"text/x-python","patch_set":8,"id":"450b7ea4_96532e2f","line":224,"range":{"start_line":219,"start_character":13,"end_line":224,"end_character":52},"updated":"2022-07-07 00:18:43.000000000","message":"same about API Manila check: https://github.com/openstack/manila/blob/master/manila/share/api.py#L2420","commit_id":"28eda4bf6c075bae58e48189ac57dbd128576db9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"366c04038ca3c7c7712e24f70204e38297202a5d","unresolved":false,"context_lines":[{"line_number":216,"context_line":"\r"},{"line_number":217,"context_line":"        current_size \u003d self._unit_convert_toGB(fs_info[\u0027quotaStatus\u0027])\r"},{"line_number":218,"context_line":"        if current_size \u003c\u003d new_size:\r"},{"line_number":219,"context_line":"            msg \u003d (_(\"New size for shrink must be less\"\r"},{"line_number":220,"context_line":"                     \"than current size.\"\r"},{"line_number":221,"context_line":"                     \"(current:%(cur_size)s,new:%(new_size)s).\")\r"},{"line_number":222,"context_line":"                   % {\u0027cur_size\u0027: current_size, \u0027new_size\u0027: new_size})\r"},{"line_number":223,"context_line":"            LOG.error(msg)\r"},{"line_number":224,"context_line":"            raise exception.InvalidInput(reason\u003dmsg)\r"},{"line_number":225,"context_line":"        new_size_unit \u003d \u0027\u0027.join((str(new_size), \u0027GB\u0027))\r"},{"line_number":226,"context_line":"        self.rest._update_share_size(share_name, new_size_unit)\r"},{"line_number":227,"context_line":"\r"}],"source_content_type":"text/x-python","patch_set":8,"id":"d14fc002_59b67f42","line":224,"range":{"start_line":219,"start_character":13,"end_line":224,"end_character":52},"in_reply_to":"450b7ea4_96532e2f","updated":"2022-07-13 09:24:16.000000000","message":"Done","commit_id":"28eda4bf6c075bae58e48189ac57dbd128576db9"},{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"c2778d65e421592fcfa4f55578b45fdbca6959b1","unresolved":true,"context_lines":[{"line_number":230,"context_line":"        pool, share_name, proto \u003d self._get_share_instance_pnp(share)\r"},{"line_number":231,"context_line":"        share_path \u003d self._generate_share_path(share_name)\r"},{"line_number":232,"context_line":"\r"},{"line_number":233,"context_line":"        if proto \u003d\u003d \u0027NFS\u0027:\r"},{"line_number":234,"context_line":"            share_backend \u003d self.rest._get_nfs_share(share_path)\r"},{"line_number":235,"context_line":"        else:\r"},{"line_number":236,"context_line":"            share_backend \u003d self.rest._get_cifs_share(share_path)\r"},{"line_number":237,"context_line":"        if not share_backend:\r"},{"line_number":238,"context_line":"            raise exception.ShareResourceNotFound(share_id\u003dshare[\u0027id\u0027])\r"},{"line_number":239,"context_line":"\r"}],"source_content_type":"text/x-python","patch_set":8,"id":"0faa3ae9_9e4030e8","line":236,"range":{"start_line":233,"start_character":8,"end_line":236,"end_character":65},"updated":"2022-07-07 00:18:43.000000000","message":"could be one sentence:\n\nshare_backend \u003d (self.rest._get_nfs_share(share_path) if proto \u003d\u003d \u0027NFS\u0027\n                 else self.rest._get_cifs_share(share_path))","commit_id":"28eda4bf6c075bae58e48189ac57dbd128576db9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"366c04038ca3c7c7712e24f70204e38297202a5d","unresolved":false,"context_lines":[{"line_number":230,"context_line":"        pool, share_name, proto \u003d self._get_share_instance_pnp(share)\r"},{"line_number":231,"context_line":"        share_path \u003d self._generate_share_path(share_name)\r"},{"line_number":232,"context_line":"\r"},{"line_number":233,"context_line":"        if proto \u003d\u003d \u0027NFS\u0027:\r"},{"line_number":234,"context_line":"            share_backend \u003d self.rest._get_nfs_share(share_path)\r"},{"line_number":235,"context_line":"        else:\r"},{"line_number":236,"context_line":"            share_backend \u003d self.rest._get_cifs_share(share_path)\r"},{"line_number":237,"context_line":"        if not share_backend:\r"},{"line_number":238,"context_line":"            raise exception.ShareResourceNotFound(share_id\u003dshare[\u0027id\u0027])\r"},{"line_number":239,"context_line":"\r"}],"source_content_type":"text/x-python","patch_set":8,"id":"221a86cd_2e7bb290","line":236,"range":{"start_line":233,"start_character":8,"end_line":236,"end_character":65},"in_reply_to":"0faa3ae9_9e4030e8","updated":"2022-07-13 09:24:16.000000000","message":"Done","commit_id":"28eda4bf6c075bae58e48189ac57dbd128576db9"},{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"c2778d65e421592fcfa4f55578b45fdbca6959b1","unresolved":true,"context_lines":[{"line_number":420,"context_line":"\r"},{"line_number":421,"context_line":"        result \u003d self.rest._get_all_pool()\r"},{"line_number":422,"context_line":"        dict_data[\"pools\"] \u003d []\r"},{"line_number":423,"context_line":"        pool_list \u003d self.pools\r"},{"line_number":424,"context_line":"        for pool_name in pool_list:\r"},{"line_number":425,"context_line":"\r"},{"line_number":426,"context_line":"            pool_capacity \u003d self._get_pool_capacity(pool_name, result)\r"}],"source_content_type":"text/x-python","patch_set":8,"id":"bc2cb81c_11c3de3c","line":423,"range":{"start_line":423,"start_character":8,"end_line":423,"end_character":30},"updated":"2022-07-07 00:18:43.000000000","message":"why creating \"pool_list\" variable ?","commit_id":"28eda4bf6c075bae58e48189ac57dbd128576db9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"366c04038ca3c7c7712e24f70204e38297202a5d","unresolved":false,"context_lines":[{"line_number":420,"context_line":"\r"},{"line_number":421,"context_line":"        result \u003d self.rest._get_all_pool()\r"},{"line_number":422,"context_line":"        dict_data[\"pools\"] \u003d []\r"},{"line_number":423,"context_line":"        pool_list \u003d self.pools\r"},{"line_number":424,"context_line":"        for pool_name in pool_list:\r"},{"line_number":425,"context_line":"\r"},{"line_number":426,"context_line":"            pool_capacity \u003d self._get_pool_capacity(pool_name, result)\r"}],"source_content_type":"text/x-python","patch_set":8,"id":"7ddc28e8_7c48315d","line":423,"range":{"start_line":423,"start_character":8,"end_line":423,"end_character":30},"in_reply_to":"bc2cb81c_11c3de3c","updated":"2022-07-13 09:24:16.000000000","message":"Done","commit_id":"28eda4bf6c075bae58e48189ac57dbd128576db9"},{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"c2778d65e421592fcfa4f55578b45fdbca6959b1","unresolved":true,"context_lines":[{"line_number":537,"context_line":"            msg \u003d _(\"Pool doesn\u0027t exist in host field.\")\r"},{"line_number":538,"context_line":"            raise exception.InvalidHost(reason\u003dmsg)\r"},{"line_number":539,"context_line":"\r"},{"line_number":540,"context_line":"        if not (proto \u003d\u003d \u0027NFS\u0027 or proto \u003d\u003d \u0027CIFS\u0027):\r"},{"line_number":541,"context_line":"            msg \u003d (_(\"Failed to create share %(name)s.\"\r"},{"line_number":542,"context_line":"                     \"Reason:invalid protocol %(proto)s\")\r"},{"line_number":543,"context_line":"                   % {\u0027name\u0027: share_instance[\u0027name\u0027], \u0027proto\u0027: proto})\r"}],"source_content_type":"text/x-python","patch_set":8,"id":"eef06c25_61b559a8","line":540,"range":{"start_line":540,"start_character":10,"end_line":540,"end_character":50},"updated":"2022-07-07 00:18:43.000000000","message":"if proto !\u003d \u0027NFS\u0027 and proto !\u003d \u0027CIFS\u0027","commit_id":"28eda4bf6c075bae58e48189ac57dbd128576db9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"366c04038ca3c7c7712e24f70204e38297202a5d","unresolved":false,"context_lines":[{"line_number":537,"context_line":"            msg \u003d _(\"Pool doesn\u0027t exist in host field.\")\r"},{"line_number":538,"context_line":"            raise exception.InvalidHost(reason\u003dmsg)\r"},{"line_number":539,"context_line":"\r"},{"line_number":540,"context_line":"        if not (proto \u003d\u003d \u0027NFS\u0027 or proto \u003d\u003d \u0027CIFS\u0027):\r"},{"line_number":541,"context_line":"            msg \u003d (_(\"Failed to create share %(name)s.\"\r"},{"line_number":542,"context_line":"                     \"Reason:invalid protocol %(proto)s\")\r"},{"line_number":543,"context_line":"                   % {\u0027name\u0027: share_instance[\u0027name\u0027], \u0027proto\u0027: proto})\r"}],"source_content_type":"text/x-python","patch_set":8,"id":"69e458c4_0f64975c","line":540,"range":{"start_line":540,"start_character":10,"end_line":540,"end_character":50},"in_reply_to":"eef06c25_61b559a8","updated":"2022-07-13 09:24:16.000000000","message":"Done","commit_id":"28eda4bf6c075bae58e48189ac57dbd128576db9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"6811afcb8e935c084d2f4b1ff01864bc7c82f2a6","unresolved":true,"context_lines":[{"line_number":1,"context_line":"# Copyright (c) 2021 MacroSAN Technologies Co., Ltd.\r"},{"line_number":2,"context_line":"# All Rights Reserved.\r"},{"line_number":3,"context_line":"#\r"},{"line_number":4,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"49394359_f75bf9c6","line":1,"range":{"start_line":1,"start_character":16,"end_line":1,"end_character":20},"updated":"2022-07-18 20:31:31.000000000","message":"2022","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Copyright (c) 2021 MacroSAN Technologies Co., Ltd.\r"},{"line_number":2,"context_line":"# All Rights Reserved.\r"},{"line_number":3,"context_line":"#\r"},{"line_number":4,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"bd92a34b_37c2d7d5","line":1,"range":{"start_line":1,"start_character":16,"end_line":1,"end_character":20},"in_reply_to":"49394359_f75bf9c6","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"6811afcb8e935c084d2f4b1ff01864bc7c82f2a6","unresolved":true,"context_lines":[{"line_number":29,"context_line":"LOG \u003d log.getLogger(__name__)\r"},{"line_number":30,"context_line":"\r"},{"line_number":31,"context_line":"\r"},{"line_number":32,"context_line":"class MacrsanHelper(object):\r"},{"line_number":33,"context_line":"    def __init__(self, configuration):\r"},{"line_number":34,"context_line":"        self.configuration \u003d configuration\r"},{"line_number":35,"context_line":"        self.rest \u003d rest_helper.RestHelper(self.configuration)\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"7c1b17ab_14eacf8a","line":32,"range":{"start_line":32,"start_character":6,"end_line":32,"end_character":13},"updated":"2022-07-18 20:31:31.000000000","message":"do you mean Macrosan?","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":29,"context_line":"LOG \u003d log.getLogger(__name__)\r"},{"line_number":30,"context_line":"\r"},{"line_number":31,"context_line":"\r"},{"line_number":32,"context_line":"class MacrsanHelper(object):\r"},{"line_number":33,"context_line":"    def __init__(self, configuration):\r"},{"line_number":34,"context_line":"        self.configuration \u003d configuration\r"},{"line_number":35,"context_line":"        self.rest \u003d rest_helper.RestHelper(self.configuration)\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"30e1410b_33ae99f2","line":32,"range":{"start_line":32,"start_character":6,"end_line":32,"end_character":13},"in_reply_to":"7c1b17ab_14eacf8a","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"6811afcb8e935c084d2f4b1ff01864bc7c82f2a6","unresolved":true,"context_lines":[{"line_number":39,"context_line":"\r"},{"line_number":40,"context_line":"    def check_share_service(self):\r"},{"line_number":41,"context_line":"        nfs_service \u003d self.rest._get_nfs_service_status()\r"},{"line_number":42,"context_line":"        if nfs_service[\u0027serviceStatus\u0027] not in [0, 1, 2]:\r"},{"line_number":43,"context_line":"            raise exception.InvalidHost(\r"},{"line_number":44,"context_line":"                reason\u003d_(\"nfs service exception.Please check\"))\r"},{"line_number":45,"context_line":"        elif nfs_service[\u0027serviceStatus\u0027] \u003d\u003d 0:\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"1b713269_cf11bf73","line":42,"range":{"start_line":42,"start_character":48,"end_line":42,"end_character":55},"updated":"2022-07-18 20:31:31.000000000","message":"what does these status mean?\nCould you please have some constants that will make it more suggestive?\ni.e:\nNON_SUPPORTED \u003d 0\nNFS_DISABLED \u003d 1\n...\nThese are examples, but I think it would be better for legibility of the code...\nAnd then you could reuse the variables instead of using the numbers, which are not very suggestive","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":30002,"name":"Douglas Viroel","email":"viroel@gmail.com","username":"dviroel"},"change_message_id":"bac3818ab289cd8137fb3e795be3a9e6ee26fcdf","unresolved":true,"context_lines":[{"line_number":39,"context_line":"\r"},{"line_number":40,"context_line":"    def check_share_service(self):\r"},{"line_number":41,"context_line":"        nfs_service \u003d self.rest._get_nfs_service_status()\r"},{"line_number":42,"context_line":"        if nfs_service[\u0027serviceStatus\u0027] not in [0, 1, 2]:\r"},{"line_number":43,"context_line":"            raise exception.InvalidHost(\r"},{"line_number":44,"context_line":"                reason\u003d_(\"nfs service exception.Please check\"))\r"},{"line_number":45,"context_line":"        elif nfs_service[\u0027serviceStatus\u0027] \u003d\u003d 0:\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"9bdb8214_0bc3a659","line":42,"range":{"start_line":42,"start_character":48,"end_line":42,"end_character":55},"in_reply_to":"1b713269_cf11bf73","updated":"2022-08-05 17:17:00.000000000","message":"+1 make code easier to understand.","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":39,"context_line":"\r"},{"line_number":40,"context_line":"    def check_share_service(self):\r"},{"line_number":41,"context_line":"        nfs_service \u003d self.rest._get_nfs_service_status()\r"},{"line_number":42,"context_line":"        if nfs_service[\u0027serviceStatus\u0027] not in [0, 1, 2]:\r"},{"line_number":43,"context_line":"            raise exception.InvalidHost(\r"},{"line_number":44,"context_line":"                reason\u003d_(\"nfs service exception.Please check\"))\r"},{"line_number":45,"context_line":"        elif nfs_service[\u0027serviceStatus\u0027] \u003d\u003d 0:\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"ea52ab74_99dab9cb","line":42,"range":{"start_line":42,"start_character":48,"end_line":42,"end_character":55},"in_reply_to":"9bdb8214_0bc3a659","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"6811afcb8e935c084d2f4b1ff01864bc7c82f2a6","unresolved":true,"context_lines":[{"line_number":40,"context_line":"    def check_share_service(self):\r"},{"line_number":41,"context_line":"        nfs_service \u003d self.rest._get_nfs_service_status()\r"},{"line_number":42,"context_line":"        if nfs_service[\u0027serviceStatus\u0027] not in [0, 1, 2]:\r"},{"line_number":43,"context_line":"            raise exception.InvalidHost(\r"},{"line_number":44,"context_line":"                reason\u003d_(\"nfs service exception.Please check\"))\r"},{"line_number":45,"context_line":"        elif nfs_service[\u0027serviceStatus\u0027] \u003d\u003d 0:\r"},{"line_number":46,"context_line":"            self.rest._config_nfs_service()\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"4c8de4b5_98ced525","line":43,"range":{"start_line":43,"start_character":12,"end_line":43,"end_character":40},"updated":"2022-07-18 20:31:31.000000000","message":"I believe exception.InvalidHost would not be appropriate for this case. You could add a new exception in the exception file, as other drivers did (see Hitachi, Nexenta, NetApp...). That way you can raise an exception related to your backend driver here.","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":40,"context_line":"    def check_share_service(self):\r"},{"line_number":41,"context_line":"        nfs_service \u003d self.rest._get_nfs_service_status()\r"},{"line_number":42,"context_line":"        if nfs_service[\u0027serviceStatus\u0027] not in [0, 1, 2]:\r"},{"line_number":43,"context_line":"            raise exception.InvalidHost(\r"},{"line_number":44,"context_line":"                reason\u003d_(\"nfs service exception.Please check\"))\r"},{"line_number":45,"context_line":"        elif nfs_service[\u0027serviceStatus\u0027] \u003d\u003d 0:\r"},{"line_number":46,"context_line":"            self.rest._config_nfs_service()\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"0be4bb4b_5f2794f8","line":43,"range":{"start_line":43,"start_character":12,"end_line":43,"end_character":40},"in_reply_to":"4c8de4b5_98ced525","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"6811afcb8e935c084d2f4b1ff01864bc7c82f2a6","unresolved":true,"context_lines":[{"line_number":41,"context_line":"        nfs_service \u003d self.rest._get_nfs_service_status()\r"},{"line_number":42,"context_line":"        if nfs_service[\u0027serviceStatus\u0027] not in [0, 1, 2]:\r"},{"line_number":43,"context_line":"            raise exception.InvalidHost(\r"},{"line_number":44,"context_line":"                reason\u003d_(\"nfs service exception.Please check\"))\r"},{"line_number":45,"context_line":"        elif nfs_service[\u0027serviceStatus\u0027] \u003d\u003d 0:\r"},{"line_number":46,"context_line":"            self.rest._config_nfs_service()\r"},{"line_number":47,"context_line":"            self.rest._start_nfs_service()\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"7449dbe3_a2a991b6","line":44,"range":{"start_line":44,"start_character":26,"end_line":44,"end_character":60},"updated":"2022-07-18 20:31:31.000000000","message":"I think this message could be more appropriate to the actual exception that is being raised... If you have the code and know what it means, I think we could be a bit more descriptive here. What do you think?","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":41,"context_line":"        nfs_service \u003d self.rest._get_nfs_service_status()\r"},{"line_number":42,"context_line":"        if nfs_service[\u0027serviceStatus\u0027] not in [0, 1, 2]:\r"},{"line_number":43,"context_line":"            raise exception.InvalidHost(\r"},{"line_number":44,"context_line":"                reason\u003d_(\"nfs service exception.Please check\"))\r"},{"line_number":45,"context_line":"        elif nfs_service[\u0027serviceStatus\u0027] \u003d\u003d 0:\r"},{"line_number":46,"context_line":"            self.rest._config_nfs_service()\r"},{"line_number":47,"context_line":"            self.rest._start_nfs_service()\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"151285ac_cec6dcd3","line":44,"range":{"start_line":44,"start_character":26,"end_line":44,"end_character":60},"in_reply_to":"7449dbe3_a2a991b6","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"6811afcb8e935c084d2f4b1ff01864bc7c82f2a6","unresolved":true,"context_lines":[{"line_number":56,"context_line":"                self.rest._config_nfs_service()\r"},{"line_number":57,"context_line":"\r"},{"line_number":58,"context_line":"        cifs_status \u003d self.rest._get_cifs_service_status()\r"},{"line_number":59,"context_line":"        if cifs_status \u003d\u003d -3:\r"},{"line_number":60,"context_line":"            raise exception.InvalidHost(\r"},{"line_number":61,"context_line":"                reason\u003d_(\"Cifs service exception.Please check\"))\r"},{"line_number":62,"context_line":"        elif cifs_status \u003d\u003d -1:\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"f7333643_3ce118bb","line":59,"range":{"start_line":59,"start_character":26,"end_line":59,"end_character":29},"updated":"2022-07-18 20:31:31.000000000","message":"same comment about the magic numbers :)","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":56,"context_line":"                self.rest._config_nfs_service()\r"},{"line_number":57,"context_line":"\r"},{"line_number":58,"context_line":"        cifs_status \u003d self.rest._get_cifs_service_status()\r"},{"line_number":59,"context_line":"        if cifs_status \u003d\u003d -3:\r"},{"line_number":60,"context_line":"            raise exception.InvalidHost(\r"},{"line_number":61,"context_line":"                reason\u003d_(\"Cifs service exception.Please check\"))\r"},{"line_number":62,"context_line":"        elif cifs_status \u003d\u003d -1:\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"e69fa80b_7bd2dc94","line":59,"range":{"start_line":59,"start_character":26,"end_line":59,"end_character":29},"in_reply_to":"f7333643_3ce118bb","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"6811afcb8e935c084d2f4b1ff01864bc7c82f2a6","unresolved":true,"context_lines":[{"line_number":57,"context_line":"\r"},{"line_number":58,"context_line":"        cifs_status \u003d self.rest._get_cifs_service_status()\r"},{"line_number":59,"context_line":"        if cifs_status \u003d\u003d -3:\r"},{"line_number":60,"context_line":"            raise exception.InvalidHost(\r"},{"line_number":61,"context_line":"                reason\u003d_(\"Cifs service exception.Please check\"))\r"},{"line_number":62,"context_line":"        elif cifs_status \u003d\u003d -1:\r"},{"line_number":63,"context_line":"            self.rest._config_cifs_service()\r"},{"line_number":64,"context_line":"            self.rest._start_cifs_service()\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"9dad3b80_d011a955","line":61,"range":{"start_line":60,"start_character":12,"end_line":61,"end_character":64},"updated":"2022-07-18 20:31:31.000000000","message":"same as above","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":57,"context_line":"\r"},{"line_number":58,"context_line":"        cifs_status \u003d self.rest._get_cifs_service_status()\r"},{"line_number":59,"context_line":"        if cifs_status \u003d\u003d -3:\r"},{"line_number":60,"context_line":"            raise exception.InvalidHost(\r"},{"line_number":61,"context_line":"                reason\u003d_(\"Cifs service exception.Please check\"))\r"},{"line_number":62,"context_line":"        elif cifs_status \u003d\u003d -1:\r"},{"line_number":63,"context_line":"            self.rest._config_cifs_service()\r"},{"line_number":64,"context_line":"            self.rest._start_cifs_service()\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"5d814b0e_cd253930","line":61,"range":{"start_line":60,"start_character":12,"end_line":61,"end_character":64},"in_reply_to":"9dad3b80_d011a955","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"6811afcb8e935c084d2f4b1ff01864bc7c82f2a6","unresolved":true,"context_lines":[{"line_number":84,"context_line":"        storage_pools \u003d self.rest._get_all_pool()\r"},{"line_number":85,"context_line":"        pool_info \u003d self._find_pool_info(pool_name, storage_pools)\r"},{"line_number":86,"context_line":"        if not pool_info:\r"},{"line_number":87,"context_line":"            msg \u003d (_(\"Can\u0027t find the pool info by pool name:%s.\") % pool_name)\r"},{"line_number":88,"context_line":"            raise exception.InvalidHost(reason\u003dmsg)\r"},{"line_number":89,"context_line":"\r"},{"line_number":90,"context_line":"        # first create filesystem\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"f736fbef_e40648a9","line":87,"range":{"start_line":87,"start_character":12,"end_line":87,"end_character":78},"updated":"2022-07-18 20:31:31.000000000","message":"msg \u003d f\u0027Failed to find information regarding pool {pool_name}\u0027\nmsg \u003d _(msg)","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":84,"context_line":"        storage_pools \u003d self.rest._get_all_pool()\r"},{"line_number":85,"context_line":"        pool_info \u003d self._find_pool_info(pool_name, storage_pools)\r"},{"line_number":86,"context_line":"        if not pool_info:\r"},{"line_number":87,"context_line":"            msg \u003d (_(\"Can\u0027t find the pool info by pool name:%s.\") % pool_name)\r"},{"line_number":88,"context_line":"            raise exception.InvalidHost(reason\u003dmsg)\r"},{"line_number":89,"context_line":"\r"},{"line_number":90,"context_line":"        # first create filesystem\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"d1d7e645_4a4381be","line":87,"range":{"start_line":87,"start_character":12,"end_line":87,"end_character":78},"in_reply_to":"f736fbef_e40648a9","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"6811afcb8e935c084d2f4b1ff01864bc7c82f2a6","unresolved":true,"context_lines":[{"line_number":98,"context_line":"        # third create nfs or cifs share\r"},{"line_number":99,"context_line":"        if proto \u003d\u003d \u0027NFS\u0027:\r"},{"line_number":100,"context_line":"            self.rest._create_nfs_share(share_path\u003dshare_path)\r"},{"line_number":101,"context_line":"        else:\r"},{"line_number":102,"context_line":"            user_name \u003d \u0027manilanobody\u0027\r"},{"line_number":103,"context_line":"            user_passwd \u003d \u0027manilanobody\u0027\r"},{"line_number":104,"context_line":"            group_name \u003d \u0027manilanobody\u0027\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"951e4d8d_cf9ef20a","line":101,"range":{"start_line":101,"start_character":8,"end_line":101,"end_character":13},"updated":"2022-07-18 20:31:31.000000000","message":"elif proto \u003d\u003d \u0027CIFS\u0027:\n    ...\nelse:\n    msg \u003d f\u0027Share protocol {requested_proto} is not supported.\u0027\n    msg \u003d _(msg)\n    raise exception.ShareBackendException(msg\u003dmsg)","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":98,"context_line":"        # third create nfs or cifs share\r"},{"line_number":99,"context_line":"        if proto \u003d\u003d \u0027NFS\u0027:\r"},{"line_number":100,"context_line":"            self.rest._create_nfs_share(share_path\u003dshare_path)\r"},{"line_number":101,"context_line":"        else:\r"},{"line_number":102,"context_line":"            user_name \u003d \u0027manilanobody\u0027\r"},{"line_number":103,"context_line":"            user_passwd \u003d \u0027manilanobody\u0027\r"},{"line_number":104,"context_line":"            group_name \u003d \u0027manilanobody\u0027\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"08b54ca1_5cddec8e","line":101,"range":{"start_line":101,"start_character":8,"end_line":101,"end_character":13},"in_reply_to":"951e4d8d_cf9ef20a","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"6811afcb8e935c084d2f4b1ff01864bc7c82f2a6","unresolved":true,"context_lines":[{"line_number":99,"context_line":"        if proto \u003d\u003d \u0027NFS\u0027:\r"},{"line_number":100,"context_line":"            self.rest._create_nfs_share(share_path\u003dshare_path)\r"},{"line_number":101,"context_line":"        else:\r"},{"line_number":102,"context_line":"            user_name \u003d \u0027manilanobody\u0027\r"},{"line_number":103,"context_line":"            user_passwd \u003d \u0027manilanobody\u0027\r"},{"line_number":104,"context_line":"            group_name \u003d \u0027manilanobody\u0027\r"},{"line_number":105,"context_line":"            ret \u003d self._ensure_user(user_name, user_passwd, group_name)\r"},{"line_number":106,"context_line":"            if not ret:\r"},{"line_number":107,"context_line":"                raise exception.InvalidShare(\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"ceef90ed_f1fce367","line":104,"range":{"start_line":102,"start_character":0,"end_line":104,"end_character":39},"updated":"2022-07-18 20:31:31.000000000","message":"Is it a requirement for this user name, password and group name already be pre-created with the exact same values? If so, I think it is important to call this out in the documentation","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":true,"context_lines":[{"line_number":99,"context_line":"        if proto \u003d\u003d \u0027NFS\u0027:\r"},{"line_number":100,"context_line":"            self.rest._create_nfs_share(share_path\u003dshare_path)\r"},{"line_number":101,"context_line":"        else:\r"},{"line_number":102,"context_line":"            user_name \u003d \u0027manilanobody\u0027\r"},{"line_number":103,"context_line":"            user_passwd \u003d \u0027manilanobody\u0027\r"},{"line_number":104,"context_line":"            group_name \u003d \u0027manilanobody\u0027\r"},{"line_number":105,"context_line":"            ret \u003d self._ensure_user(user_name, user_passwd, group_name)\r"},{"line_number":106,"context_line":"            if not ret:\r"},{"line_number":107,"context_line":"                raise exception.InvalidShare(\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"5c3e8292_505d468d","line":104,"range":{"start_line":102,"start_character":0,"end_line":104,"end_character":39},"in_reply_to":"ceef90ed_f1fce367","updated":"2022-08-19 07:30:22.000000000","message":"this code will first look for this user, and if not found, it will create it. so it is not stated in the documentation","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"6811afcb8e935c084d2f4b1ff01864bc7c82f2a6","unresolved":true,"context_lines":[{"line_number":104,"context_line":"            group_name \u003d \u0027manilanobody\u0027\r"},{"line_number":105,"context_line":"            ret \u003d self._ensure_user(user_name, user_passwd, group_name)\r"},{"line_number":106,"context_line":"            if not ret:\r"},{"line_number":107,"context_line":"                raise exception.InvalidShare(\r"},{"line_number":108,"context_line":"                    reason\u003d(_(\r"},{"line_number":109,"context_line":"                        \u0027Failed to create share %(share)s.Reason:\u0027\r"},{"line_number":110,"context_line":"                        \u0027username %(user_name)s error.\u0027)\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"9be1ebe5_c90c75f5","line":107,"range":{"start_line":107,"start_character":22,"end_line":107,"end_character":45},"updated":"2022-07-18 20:31:31.000000000","message":"exception.MacrosanException","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":104,"context_line":"            group_name \u003d \u0027manilanobody\u0027\r"},{"line_number":105,"context_line":"            ret \u003d self._ensure_user(user_name, user_passwd, group_name)\r"},{"line_number":106,"context_line":"            if not ret:\r"},{"line_number":107,"context_line":"                raise exception.InvalidShare(\r"},{"line_number":108,"context_line":"                    reason\u003d(_(\r"},{"line_number":109,"context_line":"                        \u0027Failed to create share %(share)s.Reason:\u0027\r"},{"line_number":110,"context_line":"                        \u0027username %(user_name)s error.\u0027)\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"bbc329c7_c70231a9","line":107,"range":{"start_line":107,"start_character":22,"end_line":107,"end_character":45},"in_reply_to":"9be1ebe5_c90c75f5","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"6811afcb8e935c084d2f4b1ff01864bc7c82f2a6","unresolved":true,"context_lines":[{"line_number":123,"context_line":"        pool, share_name, proto \u003d self._get_share_instance_pnp(share)\r"},{"line_number":124,"context_line":"        share_path \u003d self._generate_share_path(share_name)\r"},{"line_number":125,"context_line":"\r"},{"line_number":126,"context_line":"        share_backend \u003d (self.rest._get_nfs_share(share_path)\r"},{"line_number":127,"context_line":"                         if proto \u003d\u003d \u0027NFS\u0027\r"},{"line_number":128,"context_line":"                         else self.rest._get_cifs_share(share_path))\r"},{"line_number":129,"context_line":"        if not share_backend:\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"c60ba3b2_ea786214","line":126,"range":{"start_line":126,"start_character":8,"end_line":126,"end_character":21},"updated":"2022-07-18 20:31:31.000000000","message":"I think naming this \u0027share\u0027 would give the real sense of what this variable holds\nshare_backend is more related to a driver than a share itself","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":123,"context_line":"        pool, share_name, proto \u003d self._get_share_instance_pnp(share)\r"},{"line_number":124,"context_line":"        share_path \u003d self._generate_share_path(share_name)\r"},{"line_number":125,"context_line":"\r"},{"line_number":126,"context_line":"        share_backend \u003d (self.rest._get_nfs_share(share_path)\r"},{"line_number":127,"context_line":"                         if proto \u003d\u003d \u0027NFS\u0027\r"},{"line_number":128,"context_line":"                         else self.rest._get_cifs_share(share_path))\r"},{"line_number":129,"context_line":"        if not share_backend:\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"bbfbfc2e_60ac4851","line":126,"range":{"start_line":126,"start_character":8,"end_line":126,"end_character":21},"in_reply_to":"c60ba3b2_ea786214","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"6811afcb8e935c084d2f4b1ff01864bc7c82f2a6","unresolved":true,"context_lines":[{"line_number":127,"context_line":"                         if proto \u003d\u003d \u0027NFS\u0027\r"},{"line_number":128,"context_line":"                         else self.rest._get_cifs_share(share_path))\r"},{"line_number":129,"context_line":"        if not share_backend:\r"},{"line_number":130,"context_line":"            LOG.warning(\u0027Share not found.share name:%s.\u0027, share_name)\r"},{"line_number":131,"context_line":"            filesystem \u003d self.rest._get_filesystem(share_name)\r"},{"line_number":132,"context_line":"            if filesystem:\r"},{"line_number":133,"context_line":"                self.rest._delete_filesystem(share_name)\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"dce98147_18a92612","line":130,"range":{"start_line":130,"start_character":12,"end_line":130,"end_character":69},"updated":"2022-07-18 20:31:31.000000000","message":"LOG.error(f\u0027Share {share_name} not found.\u0027)","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":127,"context_line":"                         if proto \u003d\u003d \u0027NFS\u0027\r"},{"line_number":128,"context_line":"                         else self.rest._get_cifs_share(share_path))\r"},{"line_number":129,"context_line":"        if not share_backend:\r"},{"line_number":130,"context_line":"            LOG.warning(\u0027Share not found.share name:%s.\u0027, share_name)\r"},{"line_number":131,"context_line":"            filesystem \u003d self.rest._get_filesystem(share_name)\r"},{"line_number":132,"context_line":"            if filesystem:\r"},{"line_number":133,"context_line":"                self.rest._delete_filesystem(share_name)\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"6f976981_ac8b8e54","line":130,"range":{"start_line":130,"start_character":12,"end_line":130,"end_character":69},"in_reply_to":"dce98147_18a92612","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":30002,"name":"Douglas Viroel","email":"viroel@gmail.com","username":"dviroel"},"change_message_id":"bac3818ab289cd8137fb3e795be3a9e6ee26fcdf","unresolved":true,"context_lines":[{"line_number":130,"context_line":"            LOG.warning(\u0027Share not found.share name:%s.\u0027, share_name)\r"},{"line_number":131,"context_line":"            filesystem \u003d self.rest._get_filesystem(share_name)\r"},{"line_number":132,"context_line":"            if filesystem:\r"},{"line_number":133,"context_line":"                self.rest._delete_filesystem(share_name)\r"},{"line_number":134,"context_line":"        else:\r"},{"line_number":135,"context_line":"            if proto \u003d\u003d \u0027NFS\u0027:\r"},{"line_number":136,"context_line":"                self.rest._delete_nfs_share(share_path)\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"7d98f1e6_b0206e00","line":133,"range":{"start_line":133,"start_character":0,"end_line":133,"end_character":56},"updated":"2022-08-05 17:17:00.000000000","message":"question: don\u0027t you need _delete_filesystem_dir here to?","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":130,"context_line":"            LOG.warning(\u0027Share not found.share name:%s.\u0027, share_name)\r"},{"line_number":131,"context_line":"            filesystem \u003d self.rest._get_filesystem(share_name)\r"},{"line_number":132,"context_line":"            if filesystem:\r"},{"line_number":133,"context_line":"                self.rest._delete_filesystem(share_name)\r"},{"line_number":134,"context_line":"        else:\r"},{"line_number":135,"context_line":"            if proto \u003d\u003d \u0027NFS\u0027:\r"},{"line_number":136,"context_line":"                self.rest._delete_nfs_share(share_path)\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"3a818f40_198e8b7f","line":133,"range":{"start_line":133,"start_character":0,"end_line":133,"end_character":56},"in_reply_to":"7d98f1e6_b0206e00","updated":"2022-08-19 07:30:22.000000000","message":"Done, _delete_filesystem can both delete filesystem_dir and filesystem.","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"6811afcb8e935c084d2f4b1ff01864bc7c82f2a6","unresolved":true,"context_lines":[{"line_number":143,"context_line":"        \"\"\"Extend share\"\"\"\r"},{"line_number":144,"context_line":"        pool, share_name, proto \u003d self._get_share_instance_pnp(share)\r"},{"line_number":145,"context_line":"        share_path \u003d self._generate_share_path(share_name)\r"},{"line_number":146,"context_line":"        share_backend \u003d (self.rest._get_nfs_share(share_path)\r"},{"line_number":147,"context_line":"                         if proto \u003d\u003d \u0027NFS\u0027\r"},{"line_number":148,"context_line":"                         else self.rest._get_cifs_share(share_path))\r"},{"line_number":149,"context_line":"        if not share_backend:\r"},{"line_number":150,"context_line":"            msg \u003d (_(\"Can\u0027t find the share by share name:%s.\") % share_name)\r"},{"line_number":151,"context_line":"            LOG.error(msg)\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"4b45a7e1_0a874ef5","line":148,"range":{"start_line":146,"start_character":8,"end_line":148,"end_character":68},"updated":"2022-07-18 20:31:31.000000000","message":"this exact code fragment is being repeated ~4 times... I think in this case we would benefit from extracting it into a new private method, send the parameters and only expect the result","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":143,"context_line":"        \"\"\"Extend share\"\"\"\r"},{"line_number":144,"context_line":"        pool, share_name, proto \u003d self._get_share_instance_pnp(share)\r"},{"line_number":145,"context_line":"        share_path \u003d self._generate_share_path(share_name)\r"},{"line_number":146,"context_line":"        share_backend \u003d (self.rest._get_nfs_share(share_path)\r"},{"line_number":147,"context_line":"                         if proto \u003d\u003d \u0027NFS\u0027\r"},{"line_number":148,"context_line":"                         else self.rest._get_cifs_share(share_path))\r"},{"line_number":149,"context_line":"        if not share_backend:\r"},{"line_number":150,"context_line":"            msg \u003d (_(\"Can\u0027t find the share by share name:%s.\") % share_name)\r"},{"line_number":151,"context_line":"            LOG.error(msg)\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"d73fb6c8_e54991a7","line":148,"range":{"start_line":146,"start_character":8,"end_line":148,"end_character":68},"in_reply_to":"4b45a7e1_0a874ef5","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"6811afcb8e935c084d2f4b1ff01864bc7c82f2a6","unresolved":true,"context_lines":[{"line_number":147,"context_line":"                         if proto \u003d\u003d \u0027NFS\u0027\r"},{"line_number":148,"context_line":"                         else self.rest._get_cifs_share(share_path))\r"},{"line_number":149,"context_line":"        if not share_backend:\r"},{"line_number":150,"context_line":"            msg \u003d (_(\"Can\u0027t find the share by share name:%s.\") % share_name)\r"},{"line_number":151,"context_line":"            LOG.error(msg)\r"},{"line_number":152,"context_line":"            raise exception.ShareResourceNotFound(share_id\u003dshare[\u0027id\u0027])\r"},{"line_number":153,"context_line":"\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"999a059a_7af1ae82","line":150,"range":{"start_line":150,"start_character":21,"end_line":150,"end_character":61},"updated":"2022-07-18 20:31:31.000000000","message":"You can use f strings here too... Beware that f strings won\u0027t work inside the translation lib, so you\u0027ll need to declare the message and then translate it in another statement.\nMessage seems appropriate, I\u0027d only add a blank space between : and the share name.","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":147,"context_line":"                         if proto \u003d\u003d \u0027NFS\u0027\r"},{"line_number":148,"context_line":"                         else self.rest._get_cifs_share(share_path))\r"},{"line_number":149,"context_line":"        if not share_backend:\r"},{"line_number":150,"context_line":"            msg \u003d (_(\"Can\u0027t find the share by share name:%s.\") % share_name)\r"},{"line_number":151,"context_line":"            LOG.error(msg)\r"},{"line_number":152,"context_line":"            raise exception.ShareResourceNotFound(share_id\u003dshare[\u0027id\u0027])\r"},{"line_number":153,"context_line":"\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"4f12cbb8_ba6c4343","line":150,"range":{"start_line":150,"start_character":21,"end_line":150,"end_character":61},"in_reply_to":"999a059a_7af1ae82","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":30002,"name":"Douglas Viroel","email":"viroel@gmail.com","username":"dviroel"},"change_message_id":"bac3818ab289cd8137fb3e795be3a9e6ee26fcdf","unresolved":true,"context_lines":[{"line_number":151,"context_line":"            LOG.error(msg)\r"},{"line_number":152,"context_line":"            raise exception.ShareResourceNotFound(share_id\u003dshare[\u0027id\u0027])\r"},{"line_number":153,"context_line":"\r"},{"line_number":154,"context_line":"        fs_info \u003d self.rest._get_filesystem(share_name)\r"},{"line_number":155,"context_line":"        if not fs_info:\r"},{"line_number":156,"context_line":"            msg \u003d (_(\"Can\u0027t get filesystem info by filesystem name: %s.\")\r"},{"line_number":157,"context_line":"                   % share_name)\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"06f827b9_8772ad06","line":154,"range":{"start_line":154,"start_character":8,"end_line":154,"end_character":55},"updated":"2022-08-05 17:17:00.000000000","message":"do you need this? don\u0027t seems that you are this info. Maybe just call \"_update_share_size\" and check for errors. You avoid extra calls to your storage system.","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"6811afcb8e935c084d2f4b1ff01864bc7c82f2a6","unresolved":true,"context_lines":[{"line_number":151,"context_line":"            LOG.error(msg)\r"},{"line_number":152,"context_line":"            raise exception.ShareResourceNotFound(share_id\u003dshare[\u0027id\u0027])\r"},{"line_number":153,"context_line":"\r"},{"line_number":154,"context_line":"        fs_info \u003d self.rest._get_filesystem(share_name)\r"},{"line_number":155,"context_line":"        if not fs_info:\r"},{"line_number":156,"context_line":"            msg \u003d (_(\"Can\u0027t get filesystem info by filesystem name: %s.\")\r"},{"line_number":157,"context_line":"                   % share_name)\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"9d6cd553_d079722d","line":154,"range":{"start_line":154,"start_character":8,"end_line":154,"end_character":15},"updated":"2022-07-18 20:31:31.000000000","message":"filesystem_info","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":151,"context_line":"            LOG.error(msg)\r"},{"line_number":152,"context_line":"            raise exception.ShareResourceNotFound(share_id\u003dshare[\u0027id\u0027])\r"},{"line_number":153,"context_line":"\r"},{"line_number":154,"context_line":"        fs_info \u003d self.rest._get_filesystem(share_name)\r"},{"line_number":155,"context_line":"        if not fs_info:\r"},{"line_number":156,"context_line":"            msg \u003d (_(\"Can\u0027t get filesystem info by filesystem name: %s.\")\r"},{"line_number":157,"context_line":"                   % share_name)\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"226cd89a_2b2aed92","line":154,"range":{"start_line":154,"start_character":8,"end_line":154,"end_character":55},"in_reply_to":"06f827b9_8772ad06","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":151,"context_line":"            LOG.error(msg)\r"},{"line_number":152,"context_line":"            raise exception.ShareResourceNotFound(share_id\u003dshare[\u0027id\u0027])\r"},{"line_number":153,"context_line":"\r"},{"line_number":154,"context_line":"        fs_info \u003d self.rest._get_filesystem(share_name)\r"},{"line_number":155,"context_line":"        if not fs_info:\r"},{"line_number":156,"context_line":"            msg \u003d (_(\"Can\u0027t get filesystem info by filesystem name: %s.\")\r"},{"line_number":157,"context_line":"                   % share_name)\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"20545165_89afd6e0","line":154,"range":{"start_line":154,"start_character":8,"end_line":154,"end_character":15},"in_reply_to":"9d6cd553_d079722d","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"6811afcb8e935c084d2f4b1ff01864bc7c82f2a6","unresolved":true,"context_lines":[{"line_number":153,"context_line":"\r"},{"line_number":154,"context_line":"        fs_info \u003d self.rest._get_filesystem(share_name)\r"},{"line_number":155,"context_line":"        if not fs_info:\r"},{"line_number":156,"context_line":"            msg \u003d (_(\"Can\u0027t get filesystem info by filesystem name: %s.\")\r"},{"line_number":157,"context_line":"                   % share_name)\r"},{"line_number":158,"context_line":"            LOG.error(msg)\r"},{"line_number":159,"context_line":"            raise exception.InvalidShare(reason\u003dmsg)\r"},{"line_number":160,"context_line":"\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"53b8e0af_9a773cb8","line":157,"range":{"start_line":156,"start_character":18,"end_line":157,"end_character":32},"updated":"2022-07-18 20:31:31.000000000","message":"same as above","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":153,"context_line":"\r"},{"line_number":154,"context_line":"        fs_info \u003d self.rest._get_filesystem(share_name)\r"},{"line_number":155,"context_line":"        if not fs_info:\r"},{"line_number":156,"context_line":"            msg \u003d (_(\"Can\u0027t get filesystem info by filesystem name: %s.\")\r"},{"line_number":157,"context_line":"                   % share_name)\r"},{"line_number":158,"context_line":"            LOG.error(msg)\r"},{"line_number":159,"context_line":"            raise exception.InvalidShare(reason\u003dmsg)\r"},{"line_number":160,"context_line":"\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"85052e59_1589c96d","line":157,"range":{"start_line":156,"start_character":18,"end_line":157,"end_character":32},"in_reply_to":"53b8e0af_9a773cb8","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"6811afcb8e935c084d2f4b1ff01864bc7c82f2a6","unresolved":true,"context_lines":[{"line_number":160,"context_line":"\r"},{"line_number":161,"context_line":"        # storage size logic already in manila/share/api.py extend func\r"},{"line_number":162,"context_line":"        # size param need unit\r"},{"line_number":163,"context_line":"        new_size_unit \u003d \u0027\u0027.join((str(new_size), \u0027GB\u0027))\r"},{"line_number":164,"context_line":"        self.rest._update_share_size(share_name, new_size_unit)\r"},{"line_number":165,"context_line":"\r"},{"line_number":166,"context_line":"    def shrink_share(self, share, new_size, share_server):\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"ddb91328_96b309b4","line":163,"range":{"start_line":163,"start_character":8,"end_line":163,"end_character":21},"updated":"2022-07-18 20:31:31.000000000","message":"maybe new_size\nas it won\u0027t only hold the unit, but the actual size as an integer as well","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":160,"context_line":"\r"},{"line_number":161,"context_line":"        # storage size logic already in manila/share/api.py extend func\r"},{"line_number":162,"context_line":"        # size param need unit\r"},{"line_number":163,"context_line":"        new_size_unit \u003d \u0027\u0027.join((str(new_size), \u0027GB\u0027))\r"},{"line_number":164,"context_line":"        self.rest._update_share_size(share_name, new_size_unit)\r"},{"line_number":165,"context_line":"\r"},{"line_number":166,"context_line":"    def shrink_share(self, share, new_size, share_server):\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"71612bd0_8a9b62ca","line":163,"range":{"start_line":163,"start_character":8,"end_line":163,"end_character":21},"in_reply_to":"ddb91328_96b309b4","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":30002,"name":"Douglas Viroel","email":"viroel@gmail.com","username":"dviroel"},"change_message_id":"bac3818ab289cd8137fb3e795be3a9e6ee26fcdf","unresolved":true,"context_lines":[{"line_number":163,"context_line":"        new_size_unit \u003d \u0027\u0027.join((str(new_size), \u0027GB\u0027))\r"},{"line_number":164,"context_line":"        self.rest._update_share_size(share_name, new_size_unit)\r"},{"line_number":165,"context_line":"\r"},{"line_number":166,"context_line":"    def shrink_share(self, share, new_size, share_server):\r"},{"line_number":167,"context_line":"        \"\"\"Shrink share\"\"\"\r"},{"line_number":168,"context_line":"        pool, share_name, proto \u003d self._get_share_instance_pnp(share)\r"},{"line_number":169,"context_line":"        share_path \u003d self._generate_share_path(share_name)\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"947ec396_c9d53a69","line":166,"range":{"start_line":166,"start_character":44,"end_line":166,"end_character":56},"updated":"2022-08-05 17:17:00.000000000","message":"share_server\u003dNone","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":163,"context_line":"        new_size_unit \u003d \u0027\u0027.join((str(new_size), \u0027GB\u0027))\r"},{"line_number":164,"context_line":"        self.rest._update_share_size(share_name, new_size_unit)\r"},{"line_number":165,"context_line":"\r"},{"line_number":166,"context_line":"    def shrink_share(self, share, new_size, share_server):\r"},{"line_number":167,"context_line":"        \"\"\"Shrink share\"\"\"\r"},{"line_number":168,"context_line":"        pool, share_name, proto \u003d self._get_share_instance_pnp(share)\r"},{"line_number":169,"context_line":"        share_path \u003d self._generate_share_path(share_name)\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"4cdfba4d_66051865","line":166,"range":{"start_line":166,"start_character":44,"end_line":166,"end_character":56},"in_reply_to":"947ec396_c9d53a69","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":30002,"name":"Douglas Viroel","email":"viroel@gmail.com","username":"dviroel"},"change_message_id":"bac3818ab289cd8137fb3e795be3a9e6ee26fcdf","unresolved":true,"context_lines":[{"line_number":184,"context_line":"\r"},{"line_number":185,"context_line":"        # storage size logic already in manila/share/api.py shrink func\r"},{"line_number":186,"context_line":"        new_size_unit \u003d \u0027\u0027.join((str(new_size), \u0027GB\u0027))\r"},{"line_number":187,"context_line":"        self.rest._update_share_size(share_name, new_size_unit)\r"},{"line_number":188,"context_line":"\r"},{"line_number":189,"context_line":"    def ensure_share(self, share, share_server\u003dNone):\r"},{"line_number":190,"context_line":"        \"\"\"Enusre that share is exported\"\"\"\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"1dd06b0a_7a1718bb","line":187,"range":{"start_line":187,"start_character":0,"end_line":187,"end_character":64},"updated":"2022-08-05 17:17:00.000000000","message":"How the storage system behave when the new_size is lower than the real consumed space? Is it possible to validate that with some of the info that you already retrieved from storage? There is a special exception for this case[1]\n\n[1] https://github.com/openstack/manila/blob/a3b48cc5c19dc89d99963f5a0d364e71978cdfe6/manila/share/driver.py#L1241","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":184,"context_line":"\r"},{"line_number":185,"context_line":"        # storage size logic already in manila/share/api.py shrink func\r"},{"line_number":186,"context_line":"        new_size_unit \u003d \u0027\u0027.join((str(new_size), \u0027GB\u0027))\r"},{"line_number":187,"context_line":"        self.rest._update_share_size(share_name, new_size_unit)\r"},{"line_number":188,"context_line":"\r"},{"line_number":189,"context_line":"    def ensure_share(self, share, share_server\u003dNone):\r"},{"line_number":190,"context_line":"        \"\"\"Enusre that share is exported\"\"\"\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"f4eda6dd_442c1638","line":187,"range":{"start_line":187,"start_character":0,"end_line":187,"end_character":64},"in_reply_to":"1dd06b0a_7a1718bb","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":30002,"name":"Douglas Viroel","email":"viroel@gmail.com","username":"dviroel"},"change_message_id":"bac3818ab289cd8137fb3e795be3a9e6ee26fcdf","unresolved":true,"context_lines":[{"line_number":186,"context_line":"        new_size_unit \u003d \u0027\u0027.join((str(new_size), \u0027GB\u0027))\r"},{"line_number":187,"context_line":"        self.rest._update_share_size(share_name, new_size_unit)\r"},{"line_number":188,"context_line":"\r"},{"line_number":189,"context_line":"    def ensure_share(self, share, share_server\u003dNone):\r"},{"line_number":190,"context_line":"        \"\"\"Enusre that share is exported\"\"\"\r"},{"line_number":191,"context_line":"        pool, share_name, proto \u003d self._get_share_instance_pnp(share)\r"},{"line_number":192,"context_line":"        share_path \u003d self._generate_share_path(share_name)\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"726d5240_e1e72540","line":189,"range":{"start_line":189,"start_character":8,"end_line":189,"end_character":20},"updated":"2022-08-05 17:17:00.000000000","message":"Is it possible to make this more efficient using \"ensure_shares\"[1] with your driver? i.e, retrieve more shares at once, instead of getting one per driver call?\n\n[1] https://github.com/openstack/manila/blob/a3b48cc5c19dc89d99963f5a0d364e71978cdfe6/manila/share/driver.py#L2816","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":true,"context_lines":[{"line_number":186,"context_line":"        new_size_unit \u003d \u0027\u0027.join((str(new_size), \u0027GB\u0027))\r"},{"line_number":187,"context_line":"        self.rest._update_share_size(share_name, new_size_unit)\r"},{"line_number":188,"context_line":"\r"},{"line_number":189,"context_line":"    def ensure_share(self, share, share_server\u003dNone):\r"},{"line_number":190,"context_line":"        \"\"\"Enusre that share is exported\"\"\"\r"},{"line_number":191,"context_line":"        pool, share_name, proto \u003d self._get_share_instance_pnp(share)\r"},{"line_number":192,"context_line":"        share_path \u003d self._generate_share_path(share_name)\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"e0e981cd_99576a5b","line":189,"range":{"start_line":189,"start_character":8,"end_line":189,"end_character":20},"in_reply_to":"726d5240_e1e72540","updated":"2022-08-19 07:30:22.000000000","message":"sorry, can\u0027t use ensure_shares.","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":30002,"name":"Douglas Viroel","email":"viroel@gmail.com","username":"dviroel"},"change_message_id":"bac3818ab289cd8137fb3e795be3a9e6ee26fcdf","unresolved":true,"context_lines":[{"line_number":199,"context_line":"        location \u003d self._get_location_path(share_path, share_name, proto)\r"},{"line_number":200,"context_line":"        return [location]\r"},{"line_number":201,"context_line":"\r"},{"line_number":202,"context_line":"    def allow_access(self, share, access, share_server\u003dNone):\r"},{"line_number":203,"context_line":"        \"\"\"Allow access to the share.\"\"\"\r"},{"line_number":204,"context_line":"        pool, share_name, proto \u003d self._get_share_instance_pnp(share)\r"},{"line_number":205,"context_line":"        share_path \u003d self._generate_share_path(share_name)\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"d5cb86e3_e8f3e45b","line":202,"range":{"start_line":202,"start_character":8,"end_line":202,"end_character":20},"updated":"2022-08-05 17:17:00.000000000","message":"You don\u0027t need to implement both allow_access and deny_access if you are implementing update_access. allow_access and deny_access are only called as fallback to not implemented update_access. So if you want, you can merge everything on a single method. Otherwise you should rename this method to be a private one, like \"_allow_access\".","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":199,"context_line":"        location \u003d self._get_location_path(share_path, share_name, proto)\r"},{"line_number":200,"context_line":"        return [location]\r"},{"line_number":201,"context_line":"\r"},{"line_number":202,"context_line":"    def allow_access(self, share, access, share_server\u003dNone):\r"},{"line_number":203,"context_line":"        \"\"\"Allow access to the share.\"\"\"\r"},{"line_number":204,"context_line":"        pool, share_name, proto \u003d self._get_share_instance_pnp(share)\r"},{"line_number":205,"context_line":"        share_path \u003d self._generate_share_path(share_name)\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"ac846e84_87a2bc41","line":202,"range":{"start_line":202,"start_character":8,"end_line":202,"end_character":20},"in_reply_to":"d5cb86e3_e8f3e45b","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"6811afcb8e935c084d2f4b1ff01864bc7c82f2a6","unresolved":true,"context_lines":[{"line_number":211,"context_line":"            raise exception.InvalidShareAccess(\r"},{"line_number":212,"context_line":"                reason\u003d(_(\u0027Unsupported access level:%s.\u0027) % access_level))\r"},{"line_number":213,"context_line":"        if proto \u003d\u003d \u0027NFS\u0027:\r"},{"line_number":214,"context_line":"            # Only use \u0027ip\u0027,\r"},{"line_number":215,"context_line":"            # input \"*\" replace all, or ip 172.0.1.11 ,\r"},{"line_number":216,"context_line":"            # or  ip network segment 172.0.1.11/255.255.0.0  172.0.1.11/16\r"},{"line_number":217,"context_line":"            if access_type !\u003d \u0027ip\u0027:\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"06586aeb_58c483e8","line":214,"updated":"2022-07-18 20:31:31.000000000","message":"this method is getting too long, and is dealing with multiple operations of allowing access. I think this is a scenario where we could keep the if statement but get all the content and extract into two functions:\n- One function to allow access when it is NFS\n- One function to allow access when it is CIFS","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":211,"context_line":"            raise exception.InvalidShareAccess(\r"},{"line_number":212,"context_line":"                reason\u003d(_(\u0027Unsupported access level:%s.\u0027) % access_level))\r"},{"line_number":213,"context_line":"        if proto \u003d\u003d \u0027NFS\u0027:\r"},{"line_number":214,"context_line":"            # Only use \u0027ip\u0027,\r"},{"line_number":215,"context_line":"            # input \"*\" replace all, or ip 172.0.1.11 ,\r"},{"line_number":216,"context_line":"            # or  ip network segment 172.0.1.11/255.255.0.0  172.0.1.11/16\r"},{"line_number":217,"context_line":"            if access_type !\u003d \u0027ip\u0027:\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"438b0806_51dbe1de","line":214,"in_reply_to":"06586aeb_58c483e8","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":30002,"name":"Douglas Viroel","email":"viroel@gmail.com","username":"dviroel"},"change_message_id":"bac3818ab289cd8137fb3e795be3a9e6ee26fcdf","unresolved":true,"context_lines":[{"line_number":219,"context_line":"                             \u0027access_type: %(access_type)s\u0027) %\r"},{"line_number":220,"context_line":"                           {\u0027access_type\u0027: access_type})\r"},{"line_number":221,"context_line":"                raise exception.InvalidShareAccess(reason\u003dmessage)\r"},{"line_number":222,"context_line":"            else:\r"},{"line_number":223,"context_line":"                pass\r"},{"line_number":224,"context_line":"            share_backend \u003d self.rest._get_nfs_share(share_path)\r"},{"line_number":225,"context_line":"            if not share_backend:\r"},{"line_number":226,"context_line":"                msg \u003d (_(\"Can\u0027t find the share by share name:%s.\")\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"7bc1ea81_a75eb6f9","line":223,"range":{"start_line":222,"start_character":0,"end_line":223,"end_character":20},"updated":"2022-08-05 17:17:00.000000000","message":"is that needed?","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":219,"context_line":"                             \u0027access_type: %(access_type)s\u0027) %\r"},{"line_number":220,"context_line":"                           {\u0027access_type\u0027: access_type})\r"},{"line_number":221,"context_line":"                raise exception.InvalidShareAccess(reason\u003dmessage)\r"},{"line_number":222,"context_line":"            else:\r"},{"line_number":223,"context_line":"                pass\r"},{"line_number":224,"context_line":"            share_backend \u003d self.rest._get_nfs_share(share_path)\r"},{"line_number":225,"context_line":"            if not share_backend:\r"},{"line_number":226,"context_line":"                msg \u003d (_(\"Can\u0027t find the share by share name:%s.\")\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"2c005e1d_126a0dc9","line":223,"range":{"start_line":222,"start_character":0,"end_line":223,"end_character":20},"in_reply_to":"7bc1ea81_a75eb6f9","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"6811afcb8e935c084d2f4b1ff01864bc7c82f2a6","unresolved":true,"context_lines":[{"line_number":223,"context_line":"                pass\r"},{"line_number":224,"context_line":"            share_backend \u003d self.rest._get_nfs_share(share_path)\r"},{"line_number":225,"context_line":"            if not share_backend:\r"},{"line_number":226,"context_line":"                msg \u003d (_(\"Can\u0027t find the share by share name:%s.\")\r"},{"line_number":227,"context_line":"                       % share_name)\r"},{"line_number":228,"context_line":"                LOG.error(msg)\r"},{"line_number":229,"context_line":"                raise exception.ShareResourceNotFound(share_id\u003dshare[\u0027id\u0027])\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"1c9fe4df_0086433b","line":226,"range":{"start_line":226,"start_character":59,"end_line":226,"end_character":61},"updated":"2022-07-18 20:31:31.000000000","message":"please add a blank space here between the word and the colon","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":223,"context_line":"                pass\r"},{"line_number":224,"context_line":"            share_backend \u003d self.rest._get_nfs_share(share_path)\r"},{"line_number":225,"context_line":"            if not share_backend:\r"},{"line_number":226,"context_line":"                msg \u003d (_(\"Can\u0027t find the share by share name:%s.\")\r"},{"line_number":227,"context_line":"                       % share_name)\r"},{"line_number":228,"context_line":"                LOG.error(msg)\r"},{"line_number":229,"context_line":"                raise exception.ShareResourceNotFound(share_id\u003dshare[\u0027id\u0027])\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"86899192_a63591f2","line":226,"range":{"start_line":226,"start_character":59,"end_line":226,"end_character":61},"in_reply_to":"1c9fe4df_0086433b","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"6811afcb8e935c084d2f4b1ff01864bc7c82f2a6","unresolved":true,"context_lines":[{"line_number":245,"context_line":"\r"},{"line_number":246,"context_line":"        elif proto \u003d\u003d \u0027CIFS\u0027:\r"},{"line_number":247,"context_line":"            if access_type !\u003d \u0027user\u0027:\r"},{"line_number":248,"context_line":"                message \u003d _(\u0027only user access type is \u0027\r"},{"line_number":249,"context_line":"                            \u0027allowed for CIFS shares.\u0027)\r"},{"line_number":250,"context_line":"                raise exception.InvalidShareAccess(reason\u003dmessage)\r"},{"line_number":251,"context_line":"            else:\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"f3a0417e_11772a93","line":248,"range":{"start_line":248,"start_character":29,"end_line":248,"end_character":33},"updated":"2022-07-18 20:31:31.000000000","message":"Only","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":245,"context_line":"\r"},{"line_number":246,"context_line":"        elif proto \u003d\u003d \u0027CIFS\u0027:\r"},{"line_number":247,"context_line":"            if access_type !\u003d \u0027user\u0027:\r"},{"line_number":248,"context_line":"                message \u003d _(\u0027only user access type is \u0027\r"},{"line_number":249,"context_line":"                            \u0027allowed for CIFS shares.\u0027)\r"},{"line_number":250,"context_line":"                raise exception.InvalidShareAccess(reason\u003dmessage)\r"},{"line_number":251,"context_line":"            else:\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"d8b70e0c_96041263","line":248,"range":{"start_line":248,"start_character":29,"end_line":248,"end_character":33},"in_reply_to":"f3a0417e_11772a93","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"6811afcb8e935c084d2f4b1ff01864bc7c82f2a6","unresolved":true,"context_lines":[{"line_number":252,"context_line":"                pass\r"},{"line_number":253,"context_line":"            share_backend \u003d self.rest._get_cifs_share(share_path)\r"},{"line_number":254,"context_line":"            if not share_backend:\r"},{"line_number":255,"context_line":"                msg \u003d (_(\"Can\u0027t find the share by share name:%s.\")\r"},{"line_number":256,"context_line":"                       % share_name)\r"},{"line_number":257,"context_line":"                LOG.error(msg)\r"},{"line_number":258,"context_line":"                raise exception.ShareResourceNotFound(share_id\u003dshare[\u0027id\u0027])\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"3fab5d7c_f37acff4","line":255,"range":{"start_line":255,"start_character":59,"end_line":255,"end_character":61},"updated":"2022-07-18 20:31:31.000000000","message":"same as the other comment","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":252,"context_line":"                pass\r"},{"line_number":253,"context_line":"            share_backend \u003d self.rest._get_cifs_share(share_path)\r"},{"line_number":254,"context_line":"            if not share_backend:\r"},{"line_number":255,"context_line":"                msg \u003d (_(\"Can\u0027t find the share by share name:%s.\")\r"},{"line_number":256,"context_line":"                       % share_name)\r"},{"line_number":257,"context_line":"                LOG.error(msg)\r"},{"line_number":258,"context_line":"                raise exception.ShareResourceNotFound(share_id\u003dshare[\u0027id\u0027])\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"7665cf49_3a7800f4","line":255,"range":{"start_line":255,"start_character":59,"end_line":255,"end_character":61},"in_reply_to":"3fab5d7c_f37acff4","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"6811afcb8e935c084d2f4b1ff01864bc7c82f2a6","unresolved":true,"context_lines":[{"line_number":287,"context_line":"            share_client \u003d self.rest._get_access_from_nfs_share(share_path,\r"},{"line_number":288,"context_line":"                                                                access_to)\r"},{"line_number":289,"context_line":"            if not share_client:\r"},{"line_number":290,"context_line":"                LOG.warning(\u0027Can not get share acesss. share:%s,client:%s\u0027,\r"},{"line_number":291,"context_line":"                            share_name, access_to)\r"},{"line_number":292,"context_line":"                return\r"},{"line_number":293,"context_line":"            self.rest._delete_nfs_access_rest(share_path, access_to)\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"6f2c0824_eea613b3","line":290,"range":{"start_line":290,"start_character":29,"end_line":290,"end_character":74},"updated":"2022-07-18 20:31:31.000000000","message":"f\u0027Could not list the share access for share {share_name}\u0027","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":287,"context_line":"            share_client \u003d self.rest._get_access_from_nfs_share(share_path,\r"},{"line_number":288,"context_line":"                                                                access_to)\r"},{"line_number":289,"context_line":"            if not share_client:\r"},{"line_number":290,"context_line":"                LOG.warning(\u0027Can not get share acesss. share:%s,client:%s\u0027,\r"},{"line_number":291,"context_line":"                            share_name, access_to)\r"},{"line_number":292,"context_line":"                return\r"},{"line_number":293,"context_line":"            self.rest._delete_nfs_access_rest(share_path, access_to)\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"22fa8f74_59191e89","line":290,"range":{"start_line":290,"start_character":29,"end_line":290,"end_character":74},"in_reply_to":"6f2c0824_eea613b3","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"6811afcb8e935c084d2f4b1ff01864bc7c82f2a6","unresolved":true,"context_lines":[{"line_number":278,"context_line":"        access_to \u003d access[\u0027access_to\u0027]\r"},{"line_number":279,"context_line":"\r"},{"line_number":280,"context_line":"        if proto \u003d\u003d \u0027NFS\u0027:\r"},{"line_number":281,"context_line":"            if access_type !\u003d \u0027ip\u0027:\r"},{"line_number":282,"context_line":"                LOG.warning(\u0027Only IP access types are allowed \u0027\r"},{"line_number":283,"context_line":"                            \u0027for NFS shares.\u0027)\r"},{"line_number":284,"context_line":"                return\r"},{"line_number":285,"context_line":"            if access_to \u003d\u003d \u00270.0.0.0/0\u0027:\r"},{"line_number":286,"context_line":"                access_to \u003d \u0027*\u0027\r"},{"line_number":287,"context_line":"            share_client \u003d self.rest._get_access_from_nfs_share(share_path,\r"},{"line_number":288,"context_line":"                                                                access_to)\r"},{"line_number":289,"context_line":"            if not share_client:\r"},{"line_number":290,"context_line":"                LOG.warning(\u0027Can not get share acesss. share:%s,client:%s\u0027,\r"},{"line_number":291,"context_line":"                            share_name, access_to)\r"},{"line_number":292,"context_line":"                return\r"},{"line_number":293,"context_line":"            self.rest._delete_nfs_access_rest(share_path, access_to)\r"},{"line_number":294,"context_line":"        else:\r"},{"line_number":295,"context_line":"            if access_type !\u003d \u0027user\u0027:\r"},{"line_number":296,"context_line":"                LOG.warning(\u0027Only USER access types are allowed \u0027\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"3e2a1d02_5bf203bd","line":293,"range":{"start_line":281,"start_character":12,"end_line":293,"end_character":68},"updated":"2022-07-18 20:31:31.000000000","message":"same comment regarding separating the functions to allow access for NFS and CIFS","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":278,"context_line":"        access_to \u003d access[\u0027access_to\u0027]\r"},{"line_number":279,"context_line":"\r"},{"line_number":280,"context_line":"        if proto \u003d\u003d \u0027NFS\u0027:\r"},{"line_number":281,"context_line":"            if access_type !\u003d \u0027ip\u0027:\r"},{"line_number":282,"context_line":"                LOG.warning(\u0027Only IP access types are allowed \u0027\r"},{"line_number":283,"context_line":"                            \u0027for NFS shares.\u0027)\r"},{"line_number":284,"context_line":"                return\r"},{"line_number":285,"context_line":"            if access_to \u003d\u003d \u00270.0.0.0/0\u0027:\r"},{"line_number":286,"context_line":"                access_to \u003d \u0027*\u0027\r"},{"line_number":287,"context_line":"            share_client \u003d self.rest._get_access_from_nfs_share(share_path,\r"},{"line_number":288,"context_line":"                                                                access_to)\r"},{"line_number":289,"context_line":"            if not share_client:\r"},{"line_number":290,"context_line":"                LOG.warning(\u0027Can not get share acesss. share:%s,client:%s\u0027,\r"},{"line_number":291,"context_line":"                            share_name, access_to)\r"},{"line_number":292,"context_line":"                return\r"},{"line_number":293,"context_line":"            self.rest._delete_nfs_access_rest(share_path, access_to)\r"},{"line_number":294,"context_line":"        else:\r"},{"line_number":295,"context_line":"            if access_type !\u003d \u0027user\u0027:\r"},{"line_number":296,"context_line":"                LOG.warning(\u0027Only USER access types are allowed \u0027\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"23cab59e_f9f5fbfa","line":293,"range":{"start_line":281,"start_character":12,"end_line":293,"end_character":68},"in_reply_to":"3e2a1d02_5bf203bd","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"6811afcb8e935c084d2f4b1ff01864bc7c82f2a6","unresolved":true,"context_lines":[{"line_number":324,"context_line":"        else:\r"},{"line_number":325,"context_line":"            access_list \u003d self._get_all_access_from_share(share_path, proto)\r"},{"line_number":326,"context_line":"            if not access_list:\r"},{"line_number":327,"context_line":"                LOG.warning(\u0027Cannot get all access. share:%s\u0027, share_name)\r"},{"line_number":328,"context_line":"                return\r"},{"line_number":329,"context_line":"            for share_access in access_list:\r"},{"line_number":330,"context_line":"                if (share_access[\u0027access_to\u0027] \u003d\u003d \u0027manilanobody\u0027\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"6be28f5d_b3d30f38","line":327,"range":{"start_line":327,"start_character":20,"end_line":327,"end_character":27},"updated":"2022-07-18 20:31:31.000000000","message":"error","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"6811afcb8e935c084d2f4b1ff01864bc7c82f2a6","unresolved":true,"context_lines":[{"line_number":324,"context_line":"        else:\r"},{"line_number":325,"context_line":"            access_list \u003d self._get_all_access_from_share(share_path, proto)\r"},{"line_number":326,"context_line":"            if not access_list:\r"},{"line_number":327,"context_line":"                LOG.warning(\u0027Cannot get all access. share:%s\u0027, share_name)\r"},{"line_number":328,"context_line":"                return\r"},{"line_number":329,"context_line":"            for share_access in access_list:\r"},{"line_number":330,"context_line":"                if (share_access[\u0027access_to\u0027] \u003d\u003d \u0027manilanobody\u0027\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"9c2bfdc7_4d5ba638","line":327,"range":{"start_line":327,"start_character":28,"end_line":327,"end_character":61},"updated":"2022-07-18 20:31:31.000000000","message":"same as in the message above","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":324,"context_line":"        else:\r"},{"line_number":325,"context_line":"            access_list \u003d self._get_all_access_from_share(share_path, proto)\r"},{"line_number":326,"context_line":"            if not access_list:\r"},{"line_number":327,"context_line":"                LOG.warning(\u0027Cannot get all access. share:%s\u0027, share_name)\r"},{"line_number":328,"context_line":"                return\r"},{"line_number":329,"context_line":"            for share_access in access_list:\r"},{"line_number":330,"context_line":"                if (share_access[\u0027access_to\u0027] \u003d\u003d \u0027manilanobody\u0027\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"f12fb087_f371641f","line":327,"range":{"start_line":327,"start_character":20,"end_line":327,"end_character":27},"in_reply_to":"6be28f5d_b3d30f38","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":324,"context_line":"        else:\r"},{"line_number":325,"context_line":"            access_list \u003d self._get_all_access_from_share(share_path, proto)\r"},{"line_number":326,"context_line":"            if not access_list:\r"},{"line_number":327,"context_line":"                LOG.warning(\u0027Cannot get all access. share:%s\u0027, share_name)\r"},{"line_number":328,"context_line":"                return\r"},{"line_number":329,"context_line":"            for share_access in access_list:\r"},{"line_number":330,"context_line":"                if (share_access[\u0027access_to\u0027] \u003d\u003d \u0027manilanobody\u0027\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"05190a1b_2c1c8838","line":327,"range":{"start_line":327,"start_character":28,"end_line":327,"end_character":61},"in_reply_to":"9c2bfdc7_4d5ba638","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":30002,"name":"Douglas Viroel","email":"viroel@gmail.com","username":"dviroel"},"change_message_id":"bac3818ab289cd8137fb3e795be3a9e6ee26fcdf","unresolved":true,"context_lines":[{"line_number":336,"context_line":"    def update_access(self, share, access_rules, add_rules,\r"},{"line_number":337,"context_line":"                      delete_rules, share_server\u003dNone):\r"},{"line_number":338,"context_line":"        \"\"\"Update access rules list.\"\"\"\r"},{"line_number":339,"context_line":"        if not (add_rules or delete_rules):\r"},{"line_number":340,"context_line":"            self._clear_access(share, share_server)\r"},{"line_number":341,"context_line":"            for access in access_rules:\r"},{"line_number":342,"context_line":"                self.allow_access(share, access, share_server)\r"},{"line_number":343,"context_line":"        else:\r"},{"line_number":344,"context_line":"            for access in delete_rules:\r"},{"line_number":345,"context_line":"                self.deny_access(share, access, share_server)\r"},{"line_number":346,"context_line":"            for access in add_rules:\r"},{"line_number":347,"context_line":"                self.allow_access(share, access, share_server)\r"},{"line_number":348,"context_line":"\r"},{"line_number":349,"context_line":"    def _get_all_access_from_share(self, share_path, share_proto):\r"},{"line_number":350,"context_line":"        access_list \u003d []\r"},{"line_number":351,"context_line":"        if share_proto \u003d\u003d \u0027NFS\u0027:\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"2d8c13d9_3b2dcb54","line":348,"range":{"start_line":339,"start_character":0,"end_line":348,"end_character":0},"updated":"2022-08-05 17:17:00.000000000","message":"You need to take care of exception raised here. If you raise an exception, all rules will be updated to error in manila. See [1] for more details. If you have any questions, please leave a comment or reach us on #openstack-manila.\n\n[1] https://opendev.org/openstack/manila/src/commit/2bc27c5678945d92ffd6b885eeaf6f86c9f16f8c/manila/share/driver.py#L771-L859","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":336,"context_line":"    def update_access(self, share, access_rules, add_rules,\r"},{"line_number":337,"context_line":"                      delete_rules, share_server\u003dNone):\r"},{"line_number":338,"context_line":"        \"\"\"Update access rules list.\"\"\"\r"},{"line_number":339,"context_line":"        if not (add_rules or delete_rules):\r"},{"line_number":340,"context_line":"            self._clear_access(share, share_server)\r"},{"line_number":341,"context_line":"            for access in access_rules:\r"},{"line_number":342,"context_line":"                self.allow_access(share, access, share_server)\r"},{"line_number":343,"context_line":"        else:\r"},{"line_number":344,"context_line":"            for access in delete_rules:\r"},{"line_number":345,"context_line":"                self.deny_access(share, access, share_server)\r"},{"line_number":346,"context_line":"            for access in add_rules:\r"},{"line_number":347,"context_line":"                self.allow_access(share, access, share_server)\r"},{"line_number":348,"context_line":"\r"},{"line_number":349,"context_line":"    def _get_all_access_from_share(self, share_path, share_proto):\r"},{"line_number":350,"context_line":"        access_list \u003d []\r"},{"line_number":351,"context_line":"        if share_proto \u003d\u003d \u0027NFS\u0027:\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"af7d1149_0ea016b6","line":348,"range":{"start_line":339,"start_character":0,"end_line":348,"end_character":0},"in_reply_to":"2d8c13d9_3b2dcb54","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"6811afcb8e935c084d2f4b1ff01864bc7c82f2a6","unresolved":true,"context_lines":[{"line_number":356,"context_line":"\r"},{"line_number":357,"context_line":"    def _ensure_user(self, user_name, user_passwd, group_name):\r"},{"line_number":358,"context_line":"        ret_user \u003d self.rest._query_user(user_name)\r"},{"line_number":359,"context_line":"        if ret_user \u003d\u003d \u00270\u0027:\r"},{"line_number":360,"context_line":"            ret_group \u003d self.rest._query_group(group_name)\r"},{"line_number":361,"context_line":"            if ret_group \u003d\u003d \u00270\u0027:\r"},{"line_number":362,"context_line":"                self.rest._add_localgroup(group_name)\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"8cc357ae_185d35b9","line":359,"range":{"start_line":359,"start_character":23,"end_line":359,"end_character":26},"updated":"2022-07-18 20:31:31.000000000","message":"same about magic numbers :)","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":356,"context_line":"\r"},{"line_number":357,"context_line":"    def _ensure_user(self, user_name, user_passwd, group_name):\r"},{"line_number":358,"context_line":"        ret_user \u003d self.rest._query_user(user_name)\r"},{"line_number":359,"context_line":"        if ret_user \u003d\u003d \u00270\u0027:\r"},{"line_number":360,"context_line":"            ret_group \u003d self.rest._query_group(group_name)\r"},{"line_number":361,"context_line":"            if ret_group \u003d\u003d \u00270\u0027:\r"},{"line_number":362,"context_line":"                self.rest._add_localgroup(group_name)\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"2023ed11_ef3a8b58","line":359,"range":{"start_line":359,"start_character":23,"end_line":359,"end_character":26},"in_reply_to":"8cc357ae_185d35b9","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":30002,"name":"Douglas Viroel","email":"viroel@gmail.com","username":"dviroel"},"change_message_id":"bac3818ab289cd8137fb3e795be3a9e6ee26fcdf","unresolved":true,"context_lines":[{"line_number":390,"context_line":"                    \u0027free_capacity_gb\u0027: pool_capacity[\u0027freecapacity\u0027],\r"},{"line_number":391,"context_line":"                    \u0027allocated_capacity_gb\u0027:\r"},{"line_number":392,"context_line":"                        pool_capacity[\u0027allocatedcapacity\u0027],\r"},{"line_number":393,"context_line":"                    \u0027max_over_subscription_ratio\u0027:\r"},{"line_number":394,"context_line":"                        self.configuration.max_over_subscription_ratio,\r"},{"line_number":395,"context_line":"                    \u0027reserved_percentage\u0027: 0,\r"},{"line_number":396,"context_line":"                    \u0027reserved_snapshot_percentage\u0027: 0,\r"},{"line_number":397,"context_line":"                    \u0027reserved_share_extend_percentage\u0027: 0,\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"e6446555_e80ecb05","line":394,"range":{"start_line":393,"start_character":21,"end_line":394,"end_character":71},"updated":"2022-08-05 17:17:00.000000000","message":"over subscription is only available when driver supports thin_provisioning. So, I am not sure if you storage (and driver) support this at this moment.","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":390,"context_line":"                    \u0027free_capacity_gb\u0027: pool_capacity[\u0027freecapacity\u0027],\r"},{"line_number":391,"context_line":"                    \u0027allocated_capacity_gb\u0027:\r"},{"line_number":392,"context_line":"                        pool_capacity[\u0027allocatedcapacity\u0027],\r"},{"line_number":393,"context_line":"                    \u0027max_over_subscription_ratio\u0027:\r"},{"line_number":394,"context_line":"                        self.configuration.max_over_subscription_ratio,\r"},{"line_number":395,"context_line":"                    \u0027reserved_percentage\u0027: 0,\r"},{"line_number":396,"context_line":"                    \u0027reserved_snapshot_percentage\u0027: 0,\r"},{"line_number":397,"context_line":"                    \u0027reserved_share_extend_percentage\u0027: 0,\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"a30467f9_15195542","line":394,"range":{"start_line":393,"start_character":21,"end_line":394,"end_character":71},"in_reply_to":"e6446555_e80ecb05","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":30002,"name":"Douglas Viroel","email":"viroel@gmail.com","username":"dviroel"},"change_message_id":"bac3818ab289cd8137fb3e795be3a9e6ee26fcdf","unresolved":true,"context_lines":[{"line_number":426,"context_line":"\r"},{"line_number":427,"context_line":"        return pool_info\r"},{"line_number":428,"context_line":"\r"},{"line_number":429,"context_line":"    def _unit_convert_toGB(self, capacity):\r"},{"line_number":430,"context_line":"        \"\"\"Convert unit to GB\"\"\"\r"},{"line_number":431,"context_line":"        capacity \u003d capacity.upper()\r"},{"line_number":432,"context_line":"\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"91570432_a7e89977","line":429,"range":{"start_line":429,"start_character":8,"end_line":429,"end_character":26},"updated":"2022-08-05 17:17:00.000000000","message":"As this file starts to grow, it would be a good idea to create a \"utils\" module and put these functions there.","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":426,"context_line":"\r"},{"line_number":427,"context_line":"        return pool_info\r"},{"line_number":428,"context_line":"\r"},{"line_number":429,"context_line":"    def _unit_convert_toGB(self, capacity):\r"},{"line_number":430,"context_line":"        \"\"\"Convert unit to GB\"\"\"\r"},{"line_number":431,"context_line":"        capacity \u003d capacity.upper()\r"},{"line_number":432,"context_line":"\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"828418b8_2e4e0e93","line":429,"range":{"start_line":429,"start_character":8,"end_line":429,"end_character":26},"in_reply_to":"91570432_a7e89977","updated":"2022-08-19 07:30:22.000000000","message":"Ack","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"6811afcb8e935c084d2f4b1ff01864bc7c82f2a6","unresolved":true,"context_lines":[{"line_number":480,"context_line":"            ip \u003d self.configuration.macrosan_nas_ip\r"},{"line_number":481,"context_line":"        share_proto \u003d share_proto.upper()\r"},{"line_number":482,"context_line":"        if share_proto \u003d\u003d \u0027NFS\u0027:\r"},{"line_number":483,"context_line":"            location \u003d r\u0027%(ip)s:%(share_path)s\u0027 \\\r"},{"line_number":484,"context_line":"                       % {\u0027ip\u0027: ip,\r"},{"line_number":485,"context_line":"                          \u0027share_path\u0027: share_path}\r"},{"line_number":486,"context_line":"        elif share_proto \u003d\u003d \u0027CIFS\u0027:\r"},{"line_number":487,"context_line":"            location \u003d r\u0027\\\\%(ip)s\\%(share_name)s\u0027 \\\r"},{"line_number":488,"context_line":"                       % {\u0027ip\u0027: ip,\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"0171275e_64154010","line":485,"range":{"start_line":483,"start_character":23,"end_line":485,"end_character":51},"updated":"2022-07-18 20:31:31.000000000","message":"using f strings would make it more readable:\nlocation \u003d f\u0027{ip}:{share_path}\u0027","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":480,"context_line":"            ip \u003d self.configuration.macrosan_nas_ip\r"},{"line_number":481,"context_line":"        share_proto \u003d share_proto.upper()\r"},{"line_number":482,"context_line":"        if share_proto \u003d\u003d \u0027NFS\u0027:\r"},{"line_number":483,"context_line":"            location \u003d r\u0027%(ip)s:%(share_path)s\u0027 \\\r"},{"line_number":484,"context_line":"                       % {\u0027ip\u0027: ip,\r"},{"line_number":485,"context_line":"                          \u0027share_path\u0027: share_path}\r"},{"line_number":486,"context_line":"        elif share_proto \u003d\u003d \u0027CIFS\u0027:\r"},{"line_number":487,"context_line":"            location \u003d r\u0027\\\\%(ip)s\\%(share_name)s\u0027 \\\r"},{"line_number":488,"context_line":"                       % {\u0027ip\u0027: ip,\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"ef7cdf6b_3da5e02f","line":485,"range":{"start_line":483,"start_character":23,"end_line":485,"end_character":51},"in_reply_to":"0171275e_64154010","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"6811afcb8e935c084d2f4b1ff01864bc7c82f2a6","unresolved":true,"context_lines":[{"line_number":484,"context_line":"                       % {\u0027ip\u0027: ip,\r"},{"line_number":485,"context_line":"                          \u0027share_path\u0027: share_path}\r"},{"line_number":486,"context_line":"        elif share_proto \u003d\u003d \u0027CIFS\u0027:\r"},{"line_number":487,"context_line":"            location \u003d r\u0027\\\\%(ip)s\\%(share_name)s\u0027 \\\r"},{"line_number":488,"context_line":"                       % {\u0027ip\u0027: ip,\r"},{"line_number":489,"context_line":"                          \u0027share_name\u0027: share_name}\r"},{"line_number":490,"context_line":"        return location\r"},{"line_number":491,"context_line":"\r"},{"line_number":492,"context_line":"    def _get_share_instance_pnp(self, share_instance):\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"6f032218_f394db80","line":489,"range":{"start_line":487,"start_character":12,"end_line":489,"end_character":51},"updated":"2022-07-18 20:31:31.000000000","message":"same as above","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":484,"context_line":"                       % {\u0027ip\u0027: ip,\r"},{"line_number":485,"context_line":"                          \u0027share_path\u0027: share_path}\r"},{"line_number":486,"context_line":"        elif share_proto \u003d\u003d \u0027CIFS\u0027:\r"},{"line_number":487,"context_line":"            location \u003d r\u0027\\\\%(ip)s\\%(share_name)s\u0027 \\\r"},{"line_number":488,"context_line":"                       % {\u0027ip\u0027: ip,\r"},{"line_number":489,"context_line":"                          \u0027share_name\u0027: share_name}\r"},{"line_number":490,"context_line":"        return location\r"},{"line_number":491,"context_line":"\r"},{"line_number":492,"context_line":"    def _get_share_instance_pnp(self, share_instance):\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"748fbd18_5703eff3","line":489,"range":{"start_line":487,"start_character":12,"end_line":489,"end_character":51},"in_reply_to":"6f032218_f394db80","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"6811afcb8e935c084d2f4b1ff01864bc7c82f2a6","unresolved":true,"context_lines":[{"line_number":499,"context_line":"            raise exception.InvalidHost(reason\u003dmsg)\r"},{"line_number":500,"context_line":"\r"},{"line_number":501,"context_line":"        if proto !\u003d \u0027NFS\u0027 and proto !\u003d \u0027CIFS\u0027:\r"},{"line_number":502,"context_line":"            msg \u003d (_(\"Failed to create share %(name)s.\"\r"},{"line_number":503,"context_line":"                     \"Reason:invalid protocol %(proto)s\")\r"},{"line_number":504,"context_line":"                   % {\u0027name\u0027: share_instance[\u0027name\u0027], \u0027proto\u0027: proto})\r"},{"line_number":505,"context_line":"            raise exception.InvalidShareAccess(reason\u003dmsg)\r"},{"line_number":506,"context_line":"\r"},{"line_number":507,"context_line":"        return pool, share_name, proto\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"e04ec0e4_d026867a","line":504,"range":{"start_line":502,"start_character":12,"end_line":504,"end_character":70},"updated":"2022-07-18 20:31:31.000000000","message":"please use f strings","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":499,"context_line":"            raise exception.InvalidHost(reason\u003dmsg)\r"},{"line_number":500,"context_line":"\r"},{"line_number":501,"context_line":"        if proto !\u003d \u0027NFS\u0027 and proto !\u003d \u0027CIFS\u0027:\r"},{"line_number":502,"context_line":"            msg \u003d (_(\"Failed to create share %(name)s.\"\r"},{"line_number":503,"context_line":"                     \"Reason:invalid protocol %(proto)s\")\r"},{"line_number":504,"context_line":"                   % {\u0027name\u0027: share_instance[\u0027name\u0027], \u0027proto\u0027: proto})\r"},{"line_number":505,"context_line":"            raise exception.InvalidShareAccess(reason\u003dmsg)\r"},{"line_number":506,"context_line":"\r"},{"line_number":507,"context_line":"        return pool, share_name, proto\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"efcc3e59_c815b836","line":504,"range":{"start_line":502,"start_character":12,"end_line":504,"end_character":70},"in_reply_to":"e04ec0e4_d026867a","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"64939d7187439e52da760f9a7d9610765e764a0c","unresolved":true,"context_lines":[{"line_number":85,"context_line":"        share_size \u003d \u0027\u0027.join((str(share[\u0027size\u0027]), \u0027GB\u0027))\r"},{"line_number":86,"context_line":"\r"},{"line_number":87,"context_line":"        # check pool available\r"},{"line_number":88,"context_line":"        storage_pools \u003d self.rest._get_all_pool()\r"},{"line_number":89,"context_line":"        pool_info \u003d self._find_pool_info(pool_name, storage_pools)\r"},{"line_number":90,"context_line":"        if not pool_info:\r"},{"line_number":91,"context_line":"            msg \u003d f\u0027Failed to find information regarding pool {pool_name}\u0027\r"},{"line_number":92,"context_line":"            msg \u003d _(msg)\r"},{"line_number":93,"context_line":"            raise exception.InvalidHost(reason\u003dmsg)\r"},{"line_number":94,"context_line":"\r"},{"line_number":95,"context_line":"        # first create filesystem\r"},{"line_number":96,"context_line":"        self.rest._create_filesystem(fs_name\u003dshare_name,\r"}],"source_content_type":"text/x-python","patch_set":23,"id":"d37e57ae_8eb6172f","line":93,"range":{"start_line":88,"start_character":8,"end_line":93,"end_character":51},"updated":"2022-08-31 02:05:59.000000000","message":"Is this check necessary? It feels wasteful to do this prior to share creation each time. If there are no pools in the backend, and a share is being created, doesn\u0027t the call on lines 96-97 fail and give us the same outcome - i.e., raise an exception to manila\u0027s share manager process failing the share creation?","commit_id":"297fbc00f699a4e2ca98c86056b260bf85b71cf8"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"64939d7187439e52da760f9a7d9610765e764a0c","unresolved":true,"context_lines":[{"line_number":112,"context_line":"                self.rest._delete_filesystem(share_name)\r"},{"line_number":113,"context_line":"                raise exception.MacrosanBackendExeption(\r"},{"line_number":114,"context_line":"                    reason\u003d(_(\r"},{"line_number":115,"context_line":"                        \u0027Failed to create share %(share)s.Reason:\u0027\r"},{"line_number":116,"context_line":"                        \u0027username %(user_name)s error.\u0027)\r"},{"line_number":117,"context_line":"                        % {\u0027share\u0027: share_name, \u0027user_name\u0027: user_name}))\r"},{"line_number":118,"context_line":"\r"}],"source_content_type":"text/x-python","patch_set":23,"id":"9e1c7b3e_9e374d4d","line":115,"range":{"start_line":115,"start_character":65,"end_line":115,"end_character":66},"updated":"2022-08-31 02:05:59.000000000","message":"missing space prior to closing quote","commit_id":"297fbc00f699a4e2ca98c86056b260bf85b71cf8"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"64939d7187439e52da760f9a7d9610765e764a0c","unresolved":true,"context_lines":[{"line_number":328,"context_line":"\r"},{"line_number":329,"context_line":"        if proto \u003d\u003d \u0027NFS\u0027:\r"},{"line_number":330,"context_line":"            for share_access in access_list:\r"},{"line_number":331,"context_line":"                if share_access[\u0027access_to\u0027] \u003d\u003d \u0027172.0.0.2\u0027:\r"},{"line_number":332,"context_line":"                    continue\r"},{"line_number":333,"context_line":"                self.rest._delete_nfs_access_rest(share_path,\r"},{"line_number":334,"context_line":"                                                  share_access[\u0027access_to\u0027])\r"}],"source_content_type":"text/x-python","patch_set":23,"id":"95bf7d30_cabee585","line":331,"range":{"start_line":331,"start_character":49,"end_line":331,"end_character":58},"updated":"2022-08-31 02:05:59.000000000","message":"Pick an IP address from the documentation IP addresses set aside in RFC 5737: https://www.rfc-editor.org/rfc/rfc5737.txt","commit_id":"297fbc00f699a4e2ca98c86056b260bf85b71cf8"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"64939d7187439e52da760f9a7d9610765e764a0c","unresolved":true,"context_lines":[{"line_number":414,"context_line":"                    \u0027free_capacity_gb\u0027: pool_capacity[\u0027freecapacity\u0027],\r"},{"line_number":415,"context_line":"                    \u0027allocated_capacity_gb\u0027:\r"},{"line_number":416,"context_line":"                        pool_capacity[\u0027allocatedcapacity\u0027],\r"},{"line_number":417,"context_line":"                    \u0027reserved_percentage\u0027: 0,\r"},{"line_number":418,"context_line":"                    \u0027reserved_snapshot_percentage\u0027: 0,\r"},{"line_number":419,"context_line":"                    \u0027reserved_share_extend_percentage\u0027: 0,\r"},{"line_number":420,"context_line":"                    \u0027dedupe\u0027: False,\r"},{"line_number":421,"context_line":"                    \u0027compression\u0027: False,\r"},{"line_number":422,"context_line":"                    \u0027qos\u0027: False,\r"}],"source_content_type":"text/x-python","patch_set":23,"id":"661468fd_6cf6e4be","line":419,"range":{"start_line":417,"start_character":0,"end_line":419,"end_character":58},"updated":"2022-08-31 02:05:59.000000000","message":"these values should be configurable by the deployer, so please read them from configuration:\n\n \u0027reserved_percentage\u0027: self.configuration.reserved_share_percentage\n \u0027reserved_share_extend_percentage\u0027: (self.configuration.reserved_share_extend_percentage or\n            self.configuration.reserved_share_percentage)","commit_id":"297fbc00f699a4e2ca98c86056b260bf85b71cf8"}],"manila/share/drivers/macrosan/macrosan_nas.py":[{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"c2778d65e421592fcfa4f55578b45fdbca6959b1","unresolved":true,"context_lines":[{"line_number":113,"context_line":"    @debug_trace\r"},{"line_number":114,"context_line":"    def create_share(self, context, share, share_server\u003dNone):\r"},{"line_number":115,"context_line":"        \"\"\"Create a share\"\"\"\r"},{"line_number":116,"context_line":"        location \u003d self.helper.create_share(share, share_server)\r"},{"line_number":117,"context_line":"        return location\r"},{"line_number":118,"context_line":"\r"},{"line_number":119,"context_line":"    @debug_trace\r"},{"line_number":120,"context_line":"    def delete_share(self, context, share, share_server\u003dNone):\r"}],"source_content_type":"text/x-python","patch_set":8,"id":"90c3cfa7_f70a2a94","line":117,"range":{"start_line":116,"start_character":8,"end_line":117,"end_character":23},"updated":"2022-07-07 00:18:43.000000000","message":"nit:\nreturn self.helper.create_share(share, share_server","commit_id":"28eda4bf6c075bae58e48189ac57dbd128576db9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"366c04038ca3c7c7712e24f70204e38297202a5d","unresolved":false,"context_lines":[{"line_number":113,"context_line":"    @debug_trace\r"},{"line_number":114,"context_line":"    def create_share(self, context, share, share_server\u003dNone):\r"},{"line_number":115,"context_line":"        \"\"\"Create a share\"\"\"\r"},{"line_number":116,"context_line":"        location \u003d self.helper.create_share(share, share_server)\r"},{"line_number":117,"context_line":"        return location\r"},{"line_number":118,"context_line":"\r"},{"line_number":119,"context_line":"    @debug_trace\r"},{"line_number":120,"context_line":"    def delete_share(self, context, share, share_server\u003dNone):\r"}],"source_content_type":"text/x-python","patch_set":8,"id":"3fb69feb_09b8db9e","line":117,"range":{"start_line":116,"start_character":8,"end_line":117,"end_character":23},"in_reply_to":"90c3cfa7_f70a2a94","updated":"2022-07-13 09:24:16.000000000","message":"Done","commit_id":"28eda4bf6c075bae58e48189ac57dbd128576db9"},{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"c2778d65e421592fcfa4f55578b45fdbca6959b1","unresolved":true,"context_lines":[{"line_number":134,"context_line":"    @debug_trace\r"},{"line_number":135,"context_line":"    def ensure_share(self, context, share, share_server\u003dNone):\r"},{"line_number":136,"context_line":"        \"\"\"Enusre that share is exported.\"\"\"\r"},{"line_number":137,"context_line":"        location \u003d self.helper.ensure_share(share, share_server)\r"},{"line_number":138,"context_line":"        return location\r"},{"line_number":139,"context_line":"\r"},{"line_number":140,"context_line":"    @debug_trace\r"},{"line_number":141,"context_line":"    def allow_access(self, context, share, access, share_server\u003dNone):\r"}],"source_content_type":"text/x-python","patch_set":8,"id":"18d4f047_daf688c1","line":138,"range":{"start_line":137,"start_character":8,"end_line":138,"end_character":23},"updated":"2022-07-07 00:18:43.000000000","message":"nit: return self.helper.ensure_share(share, share_server)","commit_id":"28eda4bf6c075bae58e48189ac57dbd128576db9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"366c04038ca3c7c7712e24f70204e38297202a5d","unresolved":false,"context_lines":[{"line_number":134,"context_line":"    @debug_trace\r"},{"line_number":135,"context_line":"    def ensure_share(self, context, share, share_server\u003dNone):\r"},{"line_number":136,"context_line":"        \"\"\"Enusre that share is exported.\"\"\"\r"},{"line_number":137,"context_line":"        location \u003d self.helper.ensure_share(share, share_server)\r"},{"line_number":138,"context_line":"        return location\r"},{"line_number":139,"context_line":"\r"},{"line_number":140,"context_line":"    @debug_trace\r"},{"line_number":141,"context_line":"    def allow_access(self, context, share, access, share_server\u003dNone):\r"}],"source_content_type":"text/x-python","patch_set":8,"id":"be59b262_26814b92","line":138,"range":{"start_line":137,"start_character":8,"end_line":138,"end_character":23},"in_reply_to":"18d4f047_daf688c1","updated":"2022-07-13 09:24:16.000000000","message":"Done","commit_id":"28eda4bf6c075bae58e48189ac57dbd128576db9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"6811afcb8e935c084d2f4b1ff01864bc7c82f2a6","unresolved":true,"context_lines":[{"line_number":1,"context_line":"# Copyright (c) 2021 MacroSAN Technologies Co., Ltd.\r"},{"line_number":2,"context_line":"# All Rights Reserved.\r"},{"line_number":3,"context_line":"#\r"},{"line_number":4,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"752699f1_c4d24747","line":1,"range":{"start_line":1,"start_character":16,"end_line":1,"end_character":20},"updated":"2022-07-18 20:31:31.000000000","message":"2022 :)","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Copyright (c) 2021 MacroSAN Technologies Co., Ltd.\r"},{"line_number":2,"context_line":"# All Rights Reserved.\r"},{"line_number":3,"context_line":"#\r"},{"line_number":4,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"ba6934b8_bf036402","line":1,"range":{"start_line":1,"start_character":16,"end_line":1,"end_character":20},"in_reply_to":"752699f1_c4d24747","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":30002,"name":"Douglas Viroel","email":"viroel@gmail.com","username":"dviroel"},"change_message_id":"bac3818ab289cd8137fb3e795be3a9e6ee26fcdf","unresolved":true,"context_lines":[{"line_number":162,"context_line":"            \u0027storage_protocol\u0027: self.PROTOCOL,\r"},{"line_number":163,"context_line":"            \u0027share_backend_name\u0027:\r"},{"line_number":164,"context_line":"                self.configuration.safe_get(\u0027share_backend_name\u0027),\r"},{"line_number":165,"context_line":"            \u0027snapshot_support\u0027: self.helper.snapshot_support,\r"},{"line_number":166,"context_line":"            \u0027create_share_from_snapshot_support\u0027:\r"},{"line_number":167,"context_line":"                self.helper.snapshot_support,\r"},{"line_number":168,"context_line":"        }\r"},{"line_number":169,"context_line":"        self.helper.update_share_stats(data)\r"},{"line_number":170,"context_line":"        super(MacrosanNasDriver, self)._update_share_stats(data)\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"05cf6801_674fa7a8","line":167,"range":{"start_line":165,"start_character":0,"end_line":167,"end_character":45},"updated":"2022-08-05 17:17:00.000000000","message":"this should be reported per pool. See an example here [1]\n\n[1] https://docs.openstack.org/manila/latest/contributor/driver_requirements.html","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":162,"context_line":"            \u0027storage_protocol\u0027: self.PROTOCOL,\r"},{"line_number":163,"context_line":"            \u0027share_backend_name\u0027:\r"},{"line_number":164,"context_line":"                self.configuration.safe_get(\u0027share_backend_name\u0027),\r"},{"line_number":165,"context_line":"            \u0027snapshot_support\u0027: self.helper.snapshot_support,\r"},{"line_number":166,"context_line":"            \u0027create_share_from_snapshot_support\u0027:\r"},{"line_number":167,"context_line":"                self.helper.snapshot_support,\r"},{"line_number":168,"context_line":"        }\r"},{"line_number":169,"context_line":"        self.helper.update_share_stats(data)\r"},{"line_number":170,"context_line":"        super(MacrosanNasDriver, self)._update_share_stats(data)\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"14369b30_87d1a6af","line":167,"range":{"start_line":165,"start_character":0,"end_line":167,"end_character":45},"in_reply_to":"05cf6801_674fa7a8","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"64939d7187439e52da760f9a7d9610765e764a0c","unresolved":true,"context_lines":[{"line_number":39,"context_line":"               secret\u003dTrue,\r"},{"line_number":40,"context_line":"               help\u003d\u0027Password for the Macrosan NAS server. \u0027),\r"},{"line_number":41,"context_line":"    cfg.StrOpt(\u0027macrosan_nas_http_protocol\u0027,\r"},{"line_number":42,"context_line":"               default\u003d\u0027https\u0027,\r"},{"line_number":43,"context_line":"               help\u003d\u0027Http protocol for the Macrosan NAS server.\u0027),\r"},{"line_number":44,"context_line":"    cfg.StrOpt(\u0027macrosan_nas_prefix\u0027,\r"},{"line_number":45,"context_line":"               default\u003d\u0027nas\u0027,\r"}],"source_content_type":"text/x-python","patch_set":23,"id":"dbe283d6_dfde746d","line":42,"range":{"start_line":42,"start_character":30,"end_line":42,"end_character":31},"updated":"2022-08-31 02:05:59.000000000","message":"choices\u003d[\u0027http\u0027, \u0027https\u0027] \n\n\nso some error checking can be built-in","commit_id":"297fbc00f699a4e2ca98c86056b260bf85b71cf8"}],"manila/share/drivers/macrosan/rest_helper.py":[{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"c2778d65e421592fcfa4f55578b45fdbca6959b1","unresolved":true,"context_lines":[{"line_number":44,"context_line":"        If token is expired,re-login.\r"},{"line_number":45,"context_line":"        \"\"\"\r"},{"line_number":46,"context_line":"        header \u003d {\u0027Authorization\u0027: self._token}\r"},{"line_number":47,"context_line":"        ret \u003d False\r"},{"line_number":48,"context_line":"        if self._token is None:\r"},{"line_number":49,"context_line":"            self.login()\r"},{"line_number":50,"context_line":"\r"}],"source_content_type":"text/x-python","patch_set":8,"id":"4c56cd8b_10e3de60","line":47,"range":{"start_line":47,"start_character":8,"end_line":47,"end_character":19},"updated":"2022-07-07 00:18:43.000000000","message":"dont need","commit_id":"28eda4bf6c075bae58e48189ac57dbd128576db9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"366c04038ca3c7c7712e24f70204e38297202a5d","unresolved":false,"context_lines":[{"line_number":44,"context_line":"        If token is expired,re-login.\r"},{"line_number":45,"context_line":"        \"\"\"\r"},{"line_number":46,"context_line":"        header \u003d {\u0027Authorization\u0027: self._token}\r"},{"line_number":47,"context_line":"        ret \u003d False\r"},{"line_number":48,"context_line":"        if self._token is None:\r"},{"line_number":49,"context_line":"            self.login()\r"},{"line_number":50,"context_line":"\r"}],"source_content_type":"text/x-python","patch_set":8,"id":"2d84ca56_574f2fda","line":47,"range":{"start_line":47,"start_character":8,"end_line":47,"end_character":19},"in_reply_to":"4c56cd8b_10e3de60","updated":"2022-07-13 09:24:16.000000000","message":"Done","commit_id":"28eda4bf6c075bae58e48189ac57dbd128576db9"},{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"c2778d65e421592fcfa4f55578b45fdbca6959b1","unresolved":true,"context_lines":[{"line_number":49,"context_line":"            self.login()\r"},{"line_number":50,"context_line":"\r"},{"line_number":51,"context_line":"        result \u003d self.do_request(url, data, method, header)\r"},{"line_number":52,"context_line":"        error_code \u003d None\r"},{"line_number":53,"context_line":"        if result[\u0027code\u0027] is not None:\r"},{"line_number":54,"context_line":"            error_code \u003d result[\u0027code\u0027]\r"},{"line_number":55,"context_line":"        if error_code \u003d\u003d 301:\r"},{"line_number":56,"context_line":"            LOG.error(\"Token is expired, re-login.\")\r"},{"line_number":57,"context_line":"            ret \u003d self.login()\r"}],"source_content_type":"text/x-python","patch_set":8,"id":"40ed5fee_a76f670d","line":54,"range":{"start_line":52,"start_character":8,"end_line":54,"end_character":39},"updated":"2022-07-07 00:18:43.000000000","message":"\"error_code\" will be equal \"result[\u0027code\u0027]\" always. You can just access the \"result[\u0027code\u0027]\" directly.","commit_id":"28eda4bf6c075bae58e48189ac57dbd128576db9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"366c04038ca3c7c7712e24f70204e38297202a5d","unresolved":false,"context_lines":[{"line_number":49,"context_line":"            self.login()\r"},{"line_number":50,"context_line":"\r"},{"line_number":51,"context_line":"        result \u003d self.do_request(url, data, method, header)\r"},{"line_number":52,"context_line":"        error_code \u003d None\r"},{"line_number":53,"context_line":"        if result[\u0027code\u0027] is not None:\r"},{"line_number":54,"context_line":"            error_code \u003d result[\u0027code\u0027]\r"},{"line_number":55,"context_line":"        if error_code \u003d\u003d 301:\r"},{"line_number":56,"context_line":"            LOG.error(\"Token is expired, re-login.\")\r"},{"line_number":57,"context_line":"            ret \u003d self.login()\r"}],"source_content_type":"text/x-python","patch_set":8,"id":"d9115731_855744fc","line":54,"range":{"start_line":52,"start_character":8,"end_line":54,"end_character":39},"in_reply_to":"40ed5fee_a76f670d","updated":"2022-07-13 09:24:16.000000000","message":"Done","commit_id":"28eda4bf6c075bae58e48189ac57dbd128576db9"},{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"c2778d65e421592fcfa4f55578b45fdbca6959b1","unresolved":true,"context_lines":[{"line_number":54,"context_line":"            error_code \u003d result[\u0027code\u0027]\r"},{"line_number":55,"context_line":"        if error_code \u003d\u003d 301:\r"},{"line_number":56,"context_line":"            LOG.error(\"Token is expired, re-login.\")\r"},{"line_number":57,"context_line":"            ret \u003d self.login()\r"},{"line_number":58,"context_line":"\r"},{"line_number":59,"context_line":"        if ret:\r"},{"line_number":60,"context_line":"            # token refresh, Re-assign\r"},{"line_number":61,"context_line":"            header[\u0027Authorization\u0027] \u003d self._token\r"},{"line_number":62,"context_line":"            result \u003d self.do_request(url, data, method, header)\r"},{"line_number":63,"context_line":"\r"},{"line_number":64,"context_line":"        return result\r"},{"line_number":65,"context_line":"\r"}],"source_content_type":"text/x-python","patch_set":8,"id":"101524ab_931e526f","line":62,"range":{"start_line":57,"start_character":12,"end_line":62,"end_character":63},"updated":"2022-07-07 00:18:43.000000000","message":"every time running the \"self.login()\" it will have the ret\u003dTrue and it goes to the condition, that\u0027s it, the \"ret\" can be removed with:\n\nif error_code \u003d\u003d 301:\n    LOG.error()\n    self.login()\n    header[\u0027authorization\u0027] \u003d self._token\n    result \u003d self._do_request()","commit_id":"28eda4bf6c075bae58e48189ac57dbd128576db9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"366c04038ca3c7c7712e24f70204e38297202a5d","unresolved":false,"context_lines":[{"line_number":54,"context_line":"            error_code \u003d result[\u0027code\u0027]\r"},{"line_number":55,"context_line":"        if error_code \u003d\u003d 301:\r"},{"line_number":56,"context_line":"            LOG.error(\"Token is expired, re-login.\")\r"},{"line_number":57,"context_line":"            ret \u003d self.login()\r"},{"line_number":58,"context_line":"\r"},{"line_number":59,"context_line":"        if ret:\r"},{"line_number":60,"context_line":"            # token refresh, Re-assign\r"},{"line_number":61,"context_line":"            header[\u0027Authorization\u0027] \u003d self._token\r"},{"line_number":62,"context_line":"            result \u003d self.do_request(url, data, method, header)\r"},{"line_number":63,"context_line":"\r"},{"line_number":64,"context_line":"        return result\r"},{"line_number":65,"context_line":"\r"}],"source_content_type":"text/x-python","patch_set":8,"id":"eda47669_c6333f76","line":62,"range":{"start_line":57,"start_character":12,"end_line":62,"end_character":63},"in_reply_to":"101524ab_931e526f","updated":"2022-07-13 09:24:16.000000000","message":"Done","commit_id":"28eda4bf6c075bae58e48189ac57dbd128576db9"},{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"c2778d65e421592fcfa4f55578b45fdbca6959b1","unresolved":true,"context_lines":[{"line_number":71,"context_line":"                        \u0027rest\u0027: \u0027nas\u0027,\r"},{"line_number":72,"context_line":"                        \u0027url\u0027: url})\r"},{"line_number":73,"context_line":"        LOG.debug(\u0027Request URL: %(url)s, Method: %(method)s, Data: %(data)s\u0027,\r"},{"line_number":74,"context_line":"                  {\u0027url\u0027: final_url, \u0027method\u0027: method, \u0027data\u0027: data})\r"},{"line_number":75,"context_line":"\r"},{"line_number":76,"context_line":"        if method \u003d\u003d \u0027POST\u0027:\r"},{"line_number":77,"context_line":"            res \u003d requests.post(final_url, data\u003ddata, headers\u003dheader,\r"}],"source_content_type":"text/x-python","patch_set":8,"id":"44b37280_1b787d3c","line":74,"range":{"start_line":74,"start_character":56,"end_line":74,"end_character":66},"updated":"2022-07-07 00:18:43.000000000","message":"the \"data\" can contain the user password. Do you really want to add this sensitive information to the logs as plaintext ? It is not recommended for security reasons.","commit_id":"28eda4bf6c075bae58e48189ac57dbd128576db9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"366c04038ca3c7c7712e24f70204e38297202a5d","unresolved":false,"context_lines":[{"line_number":71,"context_line":"                        \u0027rest\u0027: \u0027nas\u0027,\r"},{"line_number":72,"context_line":"                        \u0027url\u0027: url})\r"},{"line_number":73,"context_line":"        LOG.debug(\u0027Request URL: %(url)s, Method: %(method)s, Data: %(data)s\u0027,\r"},{"line_number":74,"context_line":"                  {\u0027url\u0027: final_url, \u0027method\u0027: method, \u0027data\u0027: data})\r"},{"line_number":75,"context_line":"\r"},{"line_number":76,"context_line":"        if method \u003d\u003d \u0027POST\u0027:\r"},{"line_number":77,"context_line":"            res \u003d requests.post(final_url, data\u003ddata, headers\u003dheader,\r"}],"source_content_type":"text/x-python","patch_set":8,"id":"2b6fe3f1_748180ef","line":74,"range":{"start_line":74,"start_character":56,"end_line":74,"end_character":66},"in_reply_to":"44b37280_1b787d3c","updated":"2022-07-13 09:24:16.000000000","message":"yes, need to log debug information.","commit_id":"28eda4bf6c075bae58e48189ac57dbd128576db9"},{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"c2778d65e421592fcfa4f55578b45fdbca6959b1","unresolved":true,"context_lines":[{"line_number":116,"context_line":"\r"},{"line_number":117,"context_line":"        LOG.debug(\u0027Login success. url: %(url)s\\n\u0027, {\u0027url\u0027: self._ip})\r"},{"line_number":118,"context_line":"        self._token \u003d result[\u0027data\u0027]\r"},{"line_number":119,"context_line":"        return True\r"},{"line_number":120,"context_line":"\r"},{"line_number":121,"context_line":"    def _assert_result_code(self, result, msg):\r"},{"line_number":122,"context_line":"        if result[\u0027code\u0027] !\u003d 0 and result[\u0027code\u0027] !\u003d 4:\r"}],"source_content_type":"text/x-python","patch_set":8,"id":"00b00efb_28c4a41c","line":119,"range":{"start_line":119,"start_character":8,"end_line":119,"end_character":19},"updated":"2022-07-07 00:18:43.000000000","message":"this method never returns a different bool. So, it is useless. If the function returns, it means: go!","commit_id":"28eda4bf6c075bae58e48189ac57dbd128576db9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"366c04038ca3c7c7712e24f70204e38297202a5d","unresolved":false,"context_lines":[{"line_number":116,"context_line":"\r"},{"line_number":117,"context_line":"        LOG.debug(\u0027Login success. url: %(url)s\\n\u0027, {\u0027url\u0027: self._ip})\r"},{"line_number":118,"context_line":"        self._token \u003d result[\u0027data\u0027]\r"},{"line_number":119,"context_line":"        return True\r"},{"line_number":120,"context_line":"\r"},{"line_number":121,"context_line":"    def _assert_result_code(self, result, msg):\r"},{"line_number":122,"context_line":"        if result[\u0027code\u0027] !\u003d 0 and result[\u0027code\u0027] !\u003d 4:\r"}],"source_content_type":"text/x-python","patch_set":8,"id":"eb581c2f_eb4403a2","line":119,"range":{"start_line":119,"start_character":8,"end_line":119,"end_character":19},"in_reply_to":"00b00efb_28c4a41c","updated":"2022-07-13 09:24:16.000000000","message":"Done","commit_id":"28eda4bf6c075bae58e48189ac57dbd128576db9"},{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"c2778d65e421592fcfa4f55578b45fdbca6959b1","unresolved":true,"context_lines":[{"line_number":640,"context_line":"\r"},{"line_number":641,"context_line":"        return result\r"},{"line_number":642,"context_line":"\r"},{"line_number":643,"context_line":"    def _find_pool_info(self, pool_name, result):\r"},{"line_number":644,"context_line":"        if pool_name is None:\r"},{"line_number":645,"context_line":"            return\r"},{"line_number":646,"context_line":"        pool_info \u003d {}\r"}],"source_content_type":"text/x-python","patch_set":8,"id":"56deada5_8f9a182d","line":643,"range":{"start_line":643,"start_character":4,"end_line":643,"end_character":48},"updated":"2022-07-07 00:18:43.000000000","message":"this method could be added to your driver helper layer, there is nothing related to the REST layer. The \"self\" is totally ignored and it is only called by the helper layer. It could be invisible to the REST layer.","commit_id":"28eda4bf6c075bae58e48189ac57dbd128576db9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"366c04038ca3c7c7712e24f70204e38297202a5d","unresolved":false,"context_lines":[{"line_number":640,"context_line":"\r"},{"line_number":641,"context_line":"        return result\r"},{"line_number":642,"context_line":"\r"},{"line_number":643,"context_line":"    def _find_pool_info(self, pool_name, result):\r"},{"line_number":644,"context_line":"        if pool_name is None:\r"},{"line_number":645,"context_line":"            return\r"},{"line_number":646,"context_line":"        pool_info \u003d {}\r"}],"source_content_type":"text/x-python","patch_set":8,"id":"e27cf210_eeb3f837","line":643,"range":{"start_line":643,"start_character":4,"end_line":643,"end_character":48},"in_reply_to":"56deada5_8f9a182d","updated":"2022-07-13 09:24:16.000000000","message":"Done","commit_id":"28eda4bf6c075bae58e48189ac57dbd128576db9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"6811afcb8e935c084d2f4b1ff01864bc7c82f2a6","unresolved":true,"context_lines":[{"line_number":59,"context_line":"\r"},{"line_number":60,"context_line":"    def do_request(self, url, data, method, header\u003dNone):\r"},{"line_number":61,"context_line":"\r"},{"line_number":62,"context_line":"        final_url \u003d (\u0027https://%(ip)s:%(port)s/%(rest)s/%(url)s\u0027\r"},{"line_number":63,"context_line":"                     % {\u0027ip\u0027: self._ip,\r"},{"line_number":64,"context_line":"                        \u0027port\u0027: self._port,\r"},{"line_number":65,"context_line":"                        \u0027rest\u0027: \u0027nas\u0027,\r"},{"line_number":66,"context_line":"                        \u0027url\u0027: url})\r"},{"line_number":67,"context_line":"        LOG.debug(\u0027Request URL: %(url)s, Method: %(method)s, Data: %(data)s\u0027,\r"},{"line_number":68,"context_line":"                  {\u0027url\u0027: final_url, \u0027method\u0027: method, \u0027data\u0027: data})\r"},{"line_number":69,"context_line":"\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"41d19e3a_9030cc2b","line":66,"range":{"start_line":62,"start_character":21,"end_line":66,"end_character":35},"updated":"2022-07-18 20:31:31.000000000","message":"f\u0027https://{ip}:{port}/{rest}/{url}\u0027\nWill it alwasys be HTTPS?","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":59,"context_line":"\r"},{"line_number":60,"context_line":"    def do_request(self, url, data, method, header\u003dNone):\r"},{"line_number":61,"context_line":"\r"},{"line_number":62,"context_line":"        final_url \u003d (\u0027https://%(ip)s:%(port)s/%(rest)s/%(url)s\u0027\r"},{"line_number":63,"context_line":"                     % {\u0027ip\u0027: self._ip,\r"},{"line_number":64,"context_line":"                        \u0027port\u0027: self._port,\r"},{"line_number":65,"context_line":"                        \u0027rest\u0027: \u0027nas\u0027,\r"},{"line_number":66,"context_line":"                        \u0027url\u0027: url})\r"},{"line_number":67,"context_line":"        LOG.debug(\u0027Request URL: %(url)s, Method: %(method)s, Data: %(data)s\u0027,\r"},{"line_number":68,"context_line":"                  {\u0027url\u0027: final_url, \u0027method\u0027: method, \u0027data\u0027: data})\r"},{"line_number":69,"context_line":"\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"46fb5fd3_f853c0f3","line":66,"range":{"start_line":62,"start_character":21,"end_line":66,"end_character":35},"in_reply_to":"41d19e3a_9030cc2b","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"6811afcb8e935c084d2f4b1ff01864bc7c82f2a6","unresolved":true,"context_lines":[{"line_number":64,"context_line":"                        \u0027port\u0027: self._port,\r"},{"line_number":65,"context_line":"                        \u0027rest\u0027: \u0027nas\u0027,\r"},{"line_number":66,"context_line":"                        \u0027url\u0027: url})\r"},{"line_number":67,"context_line":"        LOG.debug(\u0027Request URL: %(url)s, Method: %(method)s, Data: %(data)s\u0027,\r"},{"line_number":68,"context_line":"                  {\u0027url\u0027: final_url, \u0027method\u0027: method, \u0027data\u0027: data})\r"},{"line_number":69,"context_line":"\r"},{"line_number":70,"context_line":"        if method \u003d\u003d \u0027POST\u0027:\r"},{"line_number":71,"context_line":"            res \u003d requests.post(final_url, data\u003ddata, headers\u003dheader,\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"efe91cbd_4da58dd8","line":68,"range":{"start_line":67,"start_character":18,"end_line":68,"end_character":68},"updated":"2022-07-18 20:31:31.000000000","message":"please make it into an f string","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":64,"context_line":"                        \u0027port\u0027: self._port,\r"},{"line_number":65,"context_line":"                        \u0027rest\u0027: \u0027nas\u0027,\r"},{"line_number":66,"context_line":"                        \u0027url\u0027: url})\r"},{"line_number":67,"context_line":"        LOG.debug(\u0027Request URL: %(url)s, Method: %(method)s, Data: %(data)s\u0027,\r"},{"line_number":68,"context_line":"                  {\u0027url\u0027: final_url, \u0027method\u0027: method, \u0027data\u0027: data})\r"},{"line_number":69,"context_line":"\r"},{"line_number":70,"context_line":"        if method \u003d\u003d \u0027POST\u0027:\r"},{"line_number":71,"context_line":"            res \u003d requests.post(final_url, data\u003ddata, headers\u003dheader,\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"2cff0ea7_c3152e27","line":68,"range":{"start_line":67,"start_character":18,"end_line":68,"end_character":68},"in_reply_to":"efe91cbd_4da58dd8","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"6811afcb8e935c084d2f4b1ff01864bc7c82f2a6","unresolved":true,"context_lines":[{"line_number":90,"context_line":"                      \u0027url\u0027: final_url,\r"},{"line_number":91,"context_line":"                      \u0027msg\u0027: res.text})\r"},{"line_number":92,"context_line":"            LOG.error(msg)\r"},{"line_number":93,"context_line":"            raise exception.NetworkException(msg)\r"},{"line_number":94,"context_line":"        response \u003d res.json()\r"},{"line_number":95,"context_line":"        LOG.debug(\u0027CODE: %(code)s, RESPONSE: %(response)s\u0027,\r"},{"line_number":96,"context_line":"                  {\u0027code\u0027: code, \u0027response\u0027: response})\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"bc91a4f9_59d46851","line":93,"range":{"start_line":93,"start_character":12,"end_line":93,"end_character":49},"updated":"2022-07-18 20:31:31.000000000","message":"It may not always be a NetworkException when the result is different from 200. It could be unauthorized, not found and a bunch of other response codes. I think you could raise a MacrosanException here and add the details to the exception message","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":true,"context_lines":[{"line_number":90,"context_line":"                      \u0027url\u0027: final_url,\r"},{"line_number":91,"context_line":"                      \u0027msg\u0027: res.text})\r"},{"line_number":92,"context_line":"            LOG.error(msg)\r"},{"line_number":93,"context_line":"            raise exception.NetworkException(msg)\r"},{"line_number":94,"context_line":"        response \u003d res.json()\r"},{"line_number":95,"context_line":"        LOG.debug(\u0027CODE: %(code)s, RESPONSE: %(response)s\u0027,\r"},{"line_number":96,"context_line":"                  {\u0027code\u0027: code, \u0027response\u0027: response})\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"ee16ab7e_9c14b10c","line":93,"range":{"start_line":93,"start_character":12,"end_line":93,"end_character":49},"in_reply_to":"bc91a4f9_59d46851","updated":"2022-08-19 07:30:22.000000000","message":"can\u0027t judge the error code in http requests , and result[\u0027code\u0027] have make judgment in call method.","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"6811afcb8e935c084d2f4b1ff01864bc7c82f2a6","unresolved":true,"context_lines":[{"line_number":104,"context_line":"                \u0027userPasswd\u0027: self._password}\r"},{"line_number":105,"context_line":"        result \u003d self.do_request(url, data, \u0027POST\u0027)\r"},{"line_number":106,"context_line":"        if result[\u0027code\u0027] !\u003d 0:\r"},{"line_number":107,"context_line":"            msg \u003d (_(\u0027login failed.code:%s\u0027) % result[\u0027code\u0027])\r"},{"line_number":108,"context_line":"            LOG.error(msg)\r"},{"line_number":109,"context_line":"            raise exception.ShareBackendException(msg\u003dmsg)\r"},{"line_number":110,"context_line":"\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"85fd5a85_4f8c9a68","line":107,"range":{"start_line":107,"start_character":22,"end_line":107,"end_character":42},"updated":"2022-07-18 20:31:31.000000000","message":"please use f strings\nAlso, could you please add a space after the colon? :)","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":104,"context_line":"                \u0027userPasswd\u0027: self._password}\r"},{"line_number":105,"context_line":"        result \u003d self.do_request(url, data, \u0027POST\u0027)\r"},{"line_number":106,"context_line":"        if result[\u0027code\u0027] !\u003d 0:\r"},{"line_number":107,"context_line":"            msg \u003d (_(\u0027login failed.code:%s\u0027) % result[\u0027code\u0027])\r"},{"line_number":108,"context_line":"            LOG.error(msg)\r"},{"line_number":109,"context_line":"            raise exception.ShareBackendException(msg\u003dmsg)\r"},{"line_number":110,"context_line":"\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"b8bb494c_77fefcee","line":107,"range":{"start_line":107,"start_character":22,"end_line":107,"end_character":42},"in_reply_to":"85fd5a85_4f8c9a68","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"6811afcb8e935c084d2f4b1ff01864bc7c82f2a6","unresolved":true,"context_lines":[{"line_number":108,"context_line":"            LOG.error(msg)\r"},{"line_number":109,"context_line":"            raise exception.ShareBackendException(msg\u003dmsg)\r"},{"line_number":110,"context_line":"\r"},{"line_number":111,"context_line":"        LOG.debug(\u0027Login success. url: %(url)s\\n\u0027, {\u0027url\u0027: self._ip})\r"},{"line_number":112,"context_line":"        self._token \u003d result[\u0027data\u0027]\r"},{"line_number":113,"context_line":"\r"},{"line_number":114,"context_line":"    def _assert_result_code(self, result, msg):\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"1d126f23_64b46de6","line":111,"range":{"start_line":111,"start_character":18,"end_line":111,"end_character":68},"updated":"2022-07-18 20:31:31.000000000","message":"f\u0027Login successful. URL {url}\u0027","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":108,"context_line":"            LOG.error(msg)\r"},{"line_number":109,"context_line":"            raise exception.ShareBackendException(msg\u003dmsg)\r"},{"line_number":110,"context_line":"\r"},{"line_number":111,"context_line":"        LOG.debug(\u0027Login success. url: %(url)s\\n\u0027, {\u0027url\u0027: self._ip})\r"},{"line_number":112,"context_line":"        self._token \u003d result[\u0027data\u0027]\r"},{"line_number":113,"context_line":"\r"},{"line_number":114,"context_line":"    def _assert_result_code(self, result, msg):\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"91227bb8_a0804514","line":111,"range":{"start_line":111,"start_character":18,"end_line":111,"end_character":68},"in_reply_to":"1d126f23_64b46de6","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"6811afcb8e935c084d2f4b1ff01864bc7c82f2a6","unresolved":true,"context_lines":[{"line_number":112,"context_line":"        self._token \u003d result[\u0027data\u0027]\r"},{"line_number":113,"context_line":"\r"},{"line_number":114,"context_line":"    def _assert_result_code(self, result, msg):\r"},{"line_number":115,"context_line":"        if result[\u0027code\u0027] !\u003d 0 and result[\u0027code\u0027] !\u003d 4:\r"},{"line_number":116,"context_line":"            error_msg \u003d (_(\u0027%(err)s\\nresult:%(res)s.\u0027) % {\u0027err\u0027: msg,\r"},{"line_number":117,"context_line":"                                                          \u0027res\u0027: result})\r"},{"line_number":118,"context_line":"            LOG.error(error_msg)\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"28e28edf_1aca878f","line":115,"range":{"start_line":115,"start_character":50,"end_line":115,"end_character":55},"updated":"2022-07-18 20:31:31.000000000","message":"same about magic numbers","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":112,"context_line":"        self._token \u003d result[\u0027data\u0027]\r"},{"line_number":113,"context_line":"\r"},{"line_number":114,"context_line":"    def _assert_result_code(self, result, msg):\r"},{"line_number":115,"context_line":"        if result[\u0027code\u0027] !\u003d 0 and result[\u0027code\u0027] !\u003d 4:\r"},{"line_number":116,"context_line":"            error_msg \u003d (_(\u0027%(err)s\\nresult:%(res)s.\u0027) % {\u0027err\u0027: msg,\r"},{"line_number":117,"context_line":"                                                          \u0027res\u0027: result})\r"},{"line_number":118,"context_line":"            LOG.error(error_msg)\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"d61e3b27_0ff31752","line":115,"range":{"start_line":115,"start_character":50,"end_line":115,"end_character":55},"in_reply_to":"28e28edf_1aca878f","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"6811afcb8e935c084d2f4b1ff01864bc7c82f2a6","unresolved":true,"context_lines":[{"line_number":129,"context_line":"        params \u003d {\r"},{"line_number":130,"context_line":"            \u0027path\u0027: share_path,\r"},{"line_number":131,"context_line":"            \u0027authority\u0027: \u0027ro\u0027,\r"},{"line_number":132,"context_line":"            \u0027accessClient\u0027: \u0027172.0.0.2\u0027,\r"},{"line_number":133,"context_line":"        }\r"},{"line_number":134,"context_line":"        result \u003d self.call(url, params, \u0027POST\u0027)\r"},{"line_number":135,"context_line":"\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"c3305050_e7cea103","line":132,"range":{"start_line":132,"start_character":28,"end_line":132,"end_character":40},"updated":"2022-07-18 20:31:31.000000000","message":"is it never going to change? or is there a chance that this is going to be a different IP address here?","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":true,"context_lines":[{"line_number":129,"context_line":"        params \u003d {\r"},{"line_number":130,"context_line":"            \u0027path\u0027: share_path,\r"},{"line_number":131,"context_line":"            \u0027authority\u0027: \u0027ro\u0027,\r"},{"line_number":132,"context_line":"            \u0027accessClient\u0027: \u0027172.0.0.2\u0027,\r"},{"line_number":133,"context_line":"        }\r"},{"line_number":134,"context_line":"        result \u003d self.call(url, params, \u0027POST\u0027)\r"},{"line_number":135,"context_line":"\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"c4f10a52_41c27a05","line":132,"range":{"start_line":132,"start_character":28,"end_line":132,"end_character":40},"in_reply_to":"c3305050_e7cea103","updated":"2022-08-19 07:30:22.000000000","message":"when nfs share create, it need at least one client, so I add this as default.","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"64939d7187439e52da760f9a7d9610765e764a0c","unresolved":true,"context_lines":[{"line_number":129,"context_line":"        params \u003d {\r"},{"line_number":130,"context_line":"            \u0027path\u0027: share_path,\r"},{"line_number":131,"context_line":"            \u0027authority\u0027: \u0027ro\u0027,\r"},{"line_number":132,"context_line":"            \u0027accessClient\u0027: \u0027172.0.0.2\u0027,\r"},{"line_number":133,"context_line":"        }\r"},{"line_number":134,"context_line":"        result \u003d self.call(url, params, \u0027POST\u0027)\r"},{"line_number":135,"context_line":"\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"32f88ec6_735bfaed","line":132,"range":{"start_line":132,"start_character":28,"end_line":132,"end_character":40},"in_reply_to":"c4f10a52_41c27a05","updated":"2022-08-31 02:05:59.000000000","message":"Ah; i\u0027ve not seen this behavior; but, if its something the backend enforces, why not use a non-routable/documentation IP address: https://www.rfc-editor.org/rfc/rfc5737.txt","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"6811afcb8e935c084d2f4b1ff01864bc7c82f2a6","unresolved":true,"context_lines":[{"line_number":138,"context_line":"\r"},{"line_number":139,"context_line":"    def _get_nfs_share(self, share_path):\r"},{"line_number":140,"context_line":"        # GET method: param need be after url\r"},{"line_number":141,"context_line":"        url \u003d \u0027rest/nfsShare?path\u003d%s\u0027 % share_path\r"},{"line_number":142,"context_line":"\r"},{"line_number":143,"context_line":"        result \u003d self.call(url, None, \u0027GET\u0027)\r"},{"line_number":144,"context_line":"\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"d334a0dc_9126f982","line":141,"range":{"start_line":141,"start_character":14,"end_line":141,"end_character":50},"updated":"2022-07-18 20:31:31.000000000","message":"please make it into an f string","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":138,"context_line":"\r"},{"line_number":139,"context_line":"    def _get_nfs_share(self, share_path):\r"},{"line_number":140,"context_line":"        # GET method: param need be after url\r"},{"line_number":141,"context_line":"        url \u003d \u0027rest/nfsShare?path\u003d%s\u0027 % share_path\r"},{"line_number":142,"context_line":"\r"},{"line_number":143,"context_line":"        result \u003d self.call(url, None, \u0027GET\u0027)\r"},{"line_number":144,"context_line":"\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"8a210508_93cd60c6","line":141,"range":{"start_line":141,"start_character":14,"end_line":141,"end_character":50},"in_reply_to":"d334a0dc_9126f982","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"6811afcb8e935c084d2f4b1ff01864bc7c82f2a6","unresolved":true,"context_lines":[{"line_number":170,"context_line":"        }\r"},{"line_number":171,"context_line":"        result \u003d self.call(url, params, \u0027POST\u0027)\r"},{"line_number":172,"context_line":"\r"},{"line_number":173,"context_line":"        msg \u003d \u0027Create cifs share error.\u0027\r"},{"line_number":174,"context_line":"        self._assert_result_code(result, msg)\r"},{"line_number":175,"context_line":"\r"},{"line_number":176,"context_line":"    def _get_cifs_share(self, share_path):\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"52d6a3f8_8270b9bc","line":173,"range":{"start_line":173,"start_character":14,"end_line":173,"end_character":40},"updated":"2022-07-18 20:31:31.000000000","message":"Failed to create a CIFS share.","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":170,"context_line":"        }\r"},{"line_number":171,"context_line":"        result \u003d self.call(url, params, \u0027POST\u0027)\r"},{"line_number":172,"context_line":"\r"},{"line_number":173,"context_line":"        msg \u003d \u0027Create cifs share error.\u0027\r"},{"line_number":174,"context_line":"        self._assert_result_code(result, msg)\r"},{"line_number":175,"context_line":"\r"},{"line_number":176,"context_line":"    def _get_cifs_share(self, share_path):\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"846edb3f_f67bc0a2","line":173,"range":{"start_line":173,"start_character":14,"end_line":173,"end_character":40},"in_reply_to":"52d6a3f8_8270b9bc","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"6811afcb8e935c084d2f4b1ff01864bc7c82f2a6","unresolved":true,"context_lines":[{"line_number":174,"context_line":"        self._assert_result_code(result, msg)\r"},{"line_number":175,"context_line":"\r"},{"line_number":176,"context_line":"    def _get_cifs_share(self, share_path):\r"},{"line_number":177,"context_line":"        url \u003d \u0027rest/cifsShare?path\u003d%s\u0027 % share_path\r"},{"line_number":178,"context_line":"\r"},{"line_number":179,"context_line":"        result \u003d self.call(url, None, \u0027GET\u0027)\r"},{"line_number":180,"context_line":"\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"a6b7f02d_a759a169","line":177,"range":{"start_line":177,"start_character":8,"end_line":177,"end_character":51},"updated":"2022-07-18 20:31:31.000000000","message":"same as above","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":174,"context_line":"        self._assert_result_code(result, msg)\r"},{"line_number":175,"context_line":"\r"},{"line_number":176,"context_line":"    def _get_cifs_share(self, share_path):\r"},{"line_number":177,"context_line":"        url \u003d \u0027rest/cifsShare?path\u003d%s\u0027 % share_path\r"},{"line_number":178,"context_line":"\r"},{"line_number":179,"context_line":"        result \u003d self.call(url, None, \u0027GET\u0027)\r"},{"line_number":180,"context_line":"\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"530fdad4_199f15e8","line":177,"range":{"start_line":177,"start_character":8,"end_line":177,"end_character":51},"in_reply_to":"a6b7f02d_a759a169","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"6811afcb8e935c084d2f4b1ff01864bc7c82f2a6","unresolved":true,"context_lines":[{"line_number":183,"context_line":"        return result[\u0027data\u0027]\r"},{"line_number":184,"context_line":"\r"},{"line_number":185,"context_line":"    def _delete_cifs_share(self, share_name, share_path):\r"},{"line_number":186,"context_line":"        url \u003d \u0027rest/cifsShare?path\u003d%s\u0026cifsName\u003d%s\u0027 % (share_path, share_name)\r"},{"line_number":187,"context_line":"\r"},{"line_number":188,"context_line":"        result \u003d self.call(url, None, \u0027DELETE\u0027)\r"},{"line_number":189,"context_line":"        msg \u003d \u0027Delete cifs share error.\u0027\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"f8a33b51_8e09039c","line":186,"range":{"start_line":186,"start_character":8,"end_line":186,"end_character":77},"updated":"2022-07-18 20:31:31.000000000","message":"same as above","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":183,"context_line":"        return result[\u0027data\u0027]\r"},{"line_number":184,"context_line":"\r"},{"line_number":185,"context_line":"    def _delete_cifs_share(self, share_name, share_path):\r"},{"line_number":186,"context_line":"        url \u003d \u0027rest/cifsShare?path\u003d%s\u0026cifsName\u003d%s\u0027 % (share_path, share_name)\r"},{"line_number":187,"context_line":"\r"},{"line_number":188,"context_line":"        result \u003d self.call(url, None, \u0027DELETE\u0027)\r"},{"line_number":189,"context_line":"        msg \u003d \u0027Delete cifs share error.\u0027\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"0cc74be8_ebce6af7","line":186,"range":{"start_line":186,"start_character":8,"end_line":186,"end_character":77},"in_reply_to":"f8a33b51_8e09039c","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"6811afcb8e935c084d2f4b1ff01864bc7c82f2a6","unresolved":true,"context_lines":[{"line_number":250,"context_line":"        }\r"},{"line_number":251,"context_line":"        result \u003d self.call(url, dir_info, \u0027POST\u0027)\r"},{"line_number":252,"context_line":"\r"},{"line_number":253,"context_line":"        msg \u003d \u0027Create filesystem dir error.\u0027\r"},{"line_number":254,"context_line":"        self._assert_result_code(result, msg)\r"},{"line_number":255,"context_line":"\r"},{"line_number":256,"context_line":"    def _delete_filesystem_dir(self, share_path):\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"25421c54_02ee6c52","line":253,"range":{"start_line":253,"start_character":15,"end_line":253,"end_character":43},"updated":"2022-07-18 20:31:31.000000000","message":"Failed to create the filesystem directory.","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":250,"context_line":"        }\r"},{"line_number":251,"context_line":"        result \u003d self.call(url, dir_info, \u0027POST\u0027)\r"},{"line_number":252,"context_line":"\r"},{"line_number":253,"context_line":"        msg \u003d \u0027Create filesystem dir error.\u0027\r"},{"line_number":254,"context_line":"        self._assert_result_code(result, msg)\r"},{"line_number":255,"context_line":"\r"},{"line_number":256,"context_line":"    def _delete_filesystem_dir(self, share_path):\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"84be70f7_3f7c18a2","line":253,"range":{"start_line":253,"start_character":15,"end_line":253,"end_character":43},"in_reply_to":"25421c54_02ee6c52","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"6811afcb8e935c084d2f4b1ff01864bc7c82f2a6","unresolved":true,"context_lines":[{"line_number":296,"context_line":"            \u0027adGroup\u0027: \u00273\u0027,\r"},{"line_number":297,"context_line":"        }\r"},{"line_number":298,"context_line":"\r"},{"line_number":299,"context_line":"        msg \u003d \u0027Allow cifs access error.\u0027\r"},{"line_number":300,"context_line":"        access_info \u003d (\u0027Access info (access_to:%(access_to)s,\u0027\r"},{"line_number":301,"context_line":"                       \u0027access_level:%(access_level)s,\u0027\r"},{"line_number":302,"context_line":"                       \u0027path:%(path)s.)\u0027\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"e43b5532_88a763a9","line":299,"range":{"start_line":299,"start_character":14,"end_line":299,"end_character":40},"updated":"2022-07-18 20:31:31.000000000","message":"Failed to allow access to the CIFS share","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":296,"context_line":"            \u0027adGroup\u0027: \u00273\u0027,\r"},{"line_number":297,"context_line":"        }\r"},{"line_number":298,"context_line":"\r"},{"line_number":299,"context_line":"        msg \u003d \u0027Allow cifs access error.\u0027\r"},{"line_number":300,"context_line":"        access_info \u003d (\u0027Access info (access_to:%(access_to)s,\u0027\r"},{"line_number":301,"context_line":"                       \u0027access_level:%(access_level)s,\u0027\r"},{"line_number":302,"context_line":"                       \u0027path:%(path)s.)\u0027\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"6c210e21_1de7bb75","line":299,"range":{"start_line":299,"start_character":14,"end_line":299,"end_character":40},"in_reply_to":"e43b5532_88a763a9","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"6811afcb8e935c084d2f4b1ff01864bc7c82f2a6","unresolved":true,"context_lines":[{"line_number":297,"context_line":"        }\r"},{"line_number":298,"context_line":"\r"},{"line_number":299,"context_line":"        msg \u003d \u0027Allow cifs access error.\u0027\r"},{"line_number":300,"context_line":"        access_info \u003d (\u0027Access info (access_to:%(access_to)s,\u0027\r"},{"line_number":301,"context_line":"                       \u0027access_level:%(access_level)s,\u0027\r"},{"line_number":302,"context_line":"                       \u0027path:%(path)s.)\u0027\r"},{"line_number":303,"context_line":"                       % {\r"},{"line_number":304,"context_line":"                           \u0027access_to\u0027: access_to,\r"},{"line_number":305,"context_line":"                           \u0027access_level\u0027: access_level,\r"},{"line_number":306,"context_line":"                           \u0027path\u0027: share_path\r"},{"line_number":307,"context_line":"                       })\r"},{"line_number":308,"context_line":"\r"},{"line_number":309,"context_line":"        def send_rest(rest_access_to, rest_ug_type):\r"},{"line_number":310,"context_line":"            access \u003d {\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"4dd58c4b_26b8be9f","line":307,"range":{"start_line":300,"start_character":8,"end_line":307,"end_character":25},"updated":"2022-07-18 20:31:31.000000000","message":"please use f strings","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":297,"context_line":"        }\r"},{"line_number":298,"context_line":"\r"},{"line_number":299,"context_line":"        msg \u003d \u0027Allow cifs access error.\u0027\r"},{"line_number":300,"context_line":"        access_info \u003d (\u0027Access info (access_to:%(access_to)s,\u0027\r"},{"line_number":301,"context_line":"                       \u0027access_level:%(access_level)s,\u0027\r"},{"line_number":302,"context_line":"                       \u0027path:%(path)s.)\u0027\r"},{"line_number":303,"context_line":"                       % {\r"},{"line_number":304,"context_line":"                           \u0027access_to\u0027: access_to,\r"},{"line_number":305,"context_line":"                           \u0027access_level\u0027: access_level,\r"},{"line_number":306,"context_line":"                           \u0027path\u0027: share_path\r"},{"line_number":307,"context_line":"                       })\r"},{"line_number":308,"context_line":"\r"},{"line_number":309,"context_line":"        def send_rest(rest_access_to, rest_ug_type):\r"},{"line_number":310,"context_line":"            access \u003d {\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"1b24f6a0_c266849c","line":307,"range":{"start_line":300,"start_character":8,"end_line":307,"end_character":25},"in_reply_to":"4dd58c4b_26b8be9f","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"6811afcb8e935c084d2f4b1ff01864bc7c82f2a6","unresolved":true,"context_lines":[{"line_number":336,"context_line":"            str \u003d access_to.index(\u0027/\u0027)\r"},{"line_number":337,"context_line":"            access_to \u003d access_to[str + 1]\r"},{"line_number":338,"context_line":"            # First, add domain user access\r"},{"line_number":339,"context_line":"            LOG.debug(\u0027Try to add domain user access. %s\u0027, access_info)\r"},{"line_number":340,"context_line":"            if send_rest(access_to, ug_type[\u0027adUser\u0027]):\r"},{"line_number":341,"context_line":"                return\r"},{"line_number":342,"context_line":"            # Second, if add domain user access failed,\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"d228aba1_ee1f0ab2","line":339,"range":{"start_line":339,"start_character":23,"end_line":339,"end_character":26},"updated":"2022-07-18 20:31:31.000000000","message":"Attempting","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":336,"context_line":"            str \u003d access_to.index(\u0027/\u0027)\r"},{"line_number":337,"context_line":"            access_to \u003d access_to[str + 1]\r"},{"line_number":338,"context_line":"            # First, add domain user access\r"},{"line_number":339,"context_line":"            LOG.debug(\u0027Try to add domain user access. %s\u0027, access_info)\r"},{"line_number":340,"context_line":"            if send_rest(access_to, ug_type[\u0027adUser\u0027]):\r"},{"line_number":341,"context_line":"                return\r"},{"line_number":342,"context_line":"            # Second, if add domain user access failed,\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"00cd0f81_00c6fb25","line":339,"range":{"start_line":339,"start_character":23,"end_line":339,"end_character":26},"in_reply_to":"d228aba1_ee1f0ab2","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"6811afcb8e935c084d2f4b1ff01864bc7c82f2a6","unresolved":true,"context_lines":[{"line_number":342,"context_line":"            # Second, if add domain user access failed,\r"},{"line_number":343,"context_line":"            # try to add domain group access.\r"},{"line_number":344,"context_line":"            LOG.debug(\u0027Failed add domain user access, \u0027\r"},{"line_number":345,"context_line":"                      \u0027try to add domain group access. %s\u0027, access_info)\r"},{"line_number":346,"context_line":"            if send_rest(access_to, ug_type[\u0027adGroup\u0027]):\r"},{"line_number":347,"context_line":"                return\r"},{"line_number":348,"context_line":"\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"5aa88b35_5d16bd48","line":345,"range":{"start_line":345,"start_character":23,"end_line":345,"end_character":26},"updated":"2022-07-18 20:31:31.000000000","message":"attempting","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":342,"context_line":"            # Second, if add domain user access failed,\r"},{"line_number":343,"context_line":"            # try to add domain group access.\r"},{"line_number":344,"context_line":"            LOG.debug(\u0027Failed add domain user access, \u0027\r"},{"line_number":345,"context_line":"                      \u0027try to add domain group access. %s\u0027, access_info)\r"},{"line_number":346,"context_line":"            if send_rest(access_to, ug_type[\u0027adGroup\u0027]):\r"},{"line_number":347,"context_line":"                return\r"},{"line_number":348,"context_line":"\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"a5df4a7e_1c2b7c1f","line":345,"range":{"start_line":345,"start_character":23,"end_line":345,"end_character":26},"in_reply_to":"5aa88b35_5d16bd48","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"6811afcb8e935c084d2f4b1ff01864bc7c82f2a6","unresolved":true,"context_lines":[{"line_number":377,"context_line":"        }\r"},{"line_number":378,"context_line":"\r"},{"line_number":379,"context_line":"        msg \u003d \u0027Get cifs access error.\u0027\r"},{"line_number":380,"context_line":"        access_info \u003d (\u0027Access info (access_to:%(access_to)s,\u0027\r"},{"line_number":381,"context_line":"                       \u0027path:%(path)s.)\u0027\r"},{"line_number":382,"context_line":"                       % {\r"},{"line_number":383,"context_line":"                           \u0027access_to\u0027: access_to,\r"},{"line_number":384,"context_line":"                           \u0027path\u0027: share_path\r"},{"line_number":385,"context_line":"                       })\r"},{"line_number":386,"context_line":"\r"},{"line_number":387,"context_line":"        def send_rest(access_to, ug_type):\r"},{"line_number":388,"context_line":"            url \u003d \u0027rest/cifsShareClient?path\u003d%s\u0026ugName\u003d%s\u0026ugType\u003d%s\u0027 \\\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"ef99d852_647c39bb","line":385,"range":{"start_line":380,"start_character":8,"end_line":385,"end_character":25},"updated":"2022-07-18 20:31:31.000000000","message":"please use F strings","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":377,"context_line":"        }\r"},{"line_number":378,"context_line":"\r"},{"line_number":379,"context_line":"        msg \u003d \u0027Get cifs access error.\u0027\r"},{"line_number":380,"context_line":"        access_info \u003d (\u0027Access info (access_to:%(access_to)s,\u0027\r"},{"line_number":381,"context_line":"                       \u0027path:%(path)s.)\u0027\r"},{"line_number":382,"context_line":"                       % {\r"},{"line_number":383,"context_line":"                           \u0027access_to\u0027: access_to,\r"},{"line_number":384,"context_line":"                           \u0027path\u0027: share_path\r"},{"line_number":385,"context_line":"                       })\r"},{"line_number":386,"context_line":"\r"},{"line_number":387,"context_line":"        def send_rest(access_to, ug_type):\r"},{"line_number":388,"context_line":"            url \u003d \u0027rest/cifsShareClient?path\u003d%s\u0026ugName\u003d%s\u0026ugType\u003d%s\u0027 \\\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"b3ed88e6_665c6a87","line":385,"range":{"start_line":380,"start_character":8,"end_line":385,"end_character":25},"in_reply_to":"ef99d852_647c39bb","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"6811afcb8e935c084d2f4b1ff01864bc7c82f2a6","unresolved":true,"context_lines":[{"line_number":406,"context_line":"        elif \u0027/\u0027 not in access_to:\r"},{"line_number":407,"context_line":"            LOG.debug(\u0027Try to get local user access. %s\u0027, access_info)\r"},{"line_number":408,"context_line":"            user_ret \u003d send_rest(access_to, ug_type[\u0027localUser\u0027])\r"},{"line_number":409,"context_line":"            if user_ret[\u0027code\u0027] \u003d\u003d 4:\r"},{"line_number":410,"context_line":"                return share_client\r"},{"line_number":411,"context_line":"            if user_ret[\u0027data\u0027]:\r"},{"line_number":412,"context_line":"                share_client \u003d {}\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"7852b71f_cddcfb22","line":409,"range":{"start_line":409,"start_character":35,"end_line":409,"end_character":37},"updated":"2022-07-18 20:31:31.000000000","message":"same about magic numbers","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":33693,"name":"yuehui gan","display_name":"fzzf","email":"gan769410938@outlook.com","username":"gyh"},"change_message_id":"439d9eeb357242762074da3ad0da4788964729be","unresolved":false,"context_lines":[{"line_number":406,"context_line":"        elif \u0027/\u0027 not in access_to:\r"},{"line_number":407,"context_line":"            LOG.debug(\u0027Try to get local user access. %s\u0027, access_info)\r"},{"line_number":408,"context_line":"            user_ret \u003d send_rest(access_to, ug_type[\u0027localUser\u0027])\r"},{"line_number":409,"context_line":"            if user_ret[\u0027code\u0027] \u003d\u003d 4:\r"},{"line_number":410,"context_line":"                return share_client\r"},{"line_number":411,"context_line":"            if user_ret[\u0027data\u0027]:\r"},{"line_number":412,"context_line":"                share_client \u003d {}\r"}],"source_content_type":"text/x-python","patch_set":14,"id":"b88fdc72_0f3be795","line":409,"range":{"start_line":409,"start_character":35,"end_line":409,"end_character":37},"in_reply_to":"7852b71f_cddcfb22","updated":"2022-08-19 07:30:22.000000000","message":"Done","commit_id":"c507a21644fbf6de1b0d28fd4a32716dcdba56e9"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"64939d7187439e52da760f9a7d9610765e764a0c","unresolved":true,"context_lines":[{"line_number":36,"context_line":"        self._username \u003d self.configuration.macrosan_nas_username\r"},{"line_number":37,"context_line":"        self._password \u003d self.configuration.macrosan_nas_password\r"},{"line_number":38,"context_line":"        self.request_timeout \u003d self.configuration.macrosan_timeout\r"},{"line_number":39,"context_line":"        # Suppress the Insecure request warnings\r"},{"line_number":40,"context_line":"        requests.packages.urllib3.disable_warnings(\r"},{"line_number":41,"context_line":"            requests.packages.urllib3.exceptions.InsecureRequestWarning)\r"},{"line_number":42,"context_line":"\r"},{"line_number":43,"context_line":"    @utils.synchronized(\u0027macrosan_manila\u0027)\r"},{"line_number":44,"context_line":"    def call(self, url, data, method):\r"}],"source_content_type":"text/x-python","patch_set":23,"id":"436c7c46_5f39d7ef","line":41,"range":{"start_line":39,"start_character":1,"end_line":41,"end_character":72},"updated":"2022-08-31 02:05:59.000000000","message":"This isn\u0027t good practice; I suggest allowing these so administrators can use SSL/TLS with genuine certificates the way it\u0027s meant to be used. Maybe introducing an option that\u0027s turned off by default is a better way to go; for example: https://github.com/openstack/manila/blob/a73b29937420598a741dcc56bfc48a436ec83a3f/manila/share/drivers/nexenta/ns5/jsonrpc.py#L523-L524","commit_id":"297fbc00f699a4e2ca98c86056b260bf85b71cf8"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"64939d7187439e52da760f9a7d9610765e764a0c","unresolved":true,"context_lines":[{"line_number":72,"context_line":"\r"},{"line_number":73,"context_line":"        if method \u003d\u003d \u0027POST\u0027:\r"},{"line_number":74,"context_line":"            res \u003d requests.post(final_url, data\u003ddata, headers\u003dheader,\r"},{"line_number":75,"context_line":"                                timeout\u003dself.request_timeout, verify\u003dFalse)\r"},{"line_number":76,"context_line":"        elif method \u003d\u003d \u0027GET\u0027:\r"},{"line_number":77,"context_line":"            res \u003d requests.get(final_url, data\u003ddata, headers\u003dheader,\r"},{"line_number":78,"context_line":"                               timeout\u003dself.request_timeout, verify\u003dFalse)\r"}],"source_content_type":"text/x-python","patch_set":23,"id":"f2fccbb1_8f066d5d","line":75,"range":{"start_line":75,"start_character":62,"end_line":75,"end_character":74},"updated":"2022-08-31 02:05:59.000000000","message":"The \"verify\" parameter can also be set based on an insecure SSL configuration option you can introduce as suggested above","commit_id":"297fbc00f699a4e2ca98c86056b260bf85b71cf8"}],"manila/tests/share/drivers/macrosan/test_macrosan_nas.py":[{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"64939d7187439e52da760f9a7d9610765e764a0c","unresolved":true,"context_lines":[{"line_number":17,"context_line":"Share driver test for Macrosan Storage Array.\r"},{"line_number":18,"context_line":"\"\"\"\r"},{"line_number":19,"context_line":"\r"},{"line_number":20,"context_line":"import ddt\r"},{"line_number":21,"context_line":"import requests\r"},{"line_number":22,"context_line":"\r"},{"line_number":23,"context_line":"from oslo_config import cfg\r"}],"source_content_type":"text/x-python","patch_set":23,"id":"b2e42b6b_f6689e76","line":20,"range":{"start_line":20,"start_character":7,"end_line":20,"end_character":10},"updated":"2022-08-31 02:05:59.000000000","message":"Remove blank line","commit_id":"297fbc00f699a4e2ca98c86056b260bf85b71cf8"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"64939d7187439e52da760f9a7d9610765e764a0c","unresolved":true,"context_lines":[{"line_number":26,"context_line":"from manila import context\r"},{"line_number":27,"context_line":"from manila import exception\r"},{"line_number":28,"context_line":"from manila import test\r"},{"line_number":29,"context_line":"\r"},{"line_number":30,"context_line":"from manila.share import configuration\r"},{"line_number":31,"context_line":"from manila.share import driver\r"},{"line_number":32,"context_line":"from manila.share.drivers.macrosan import macrosan_constants as constants\r"}],"source_content_type":"text/x-python","patch_set":23,"id":"f5c815b8_107ec6e7","line":29,"updated":"2022-08-31 02:05:59.000000000","message":"remove blank line","commit_id":"297fbc00f699a4e2ca98c86056b260bf85b71cf8"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"64939d7187439e52da760f9a7d9610765e764a0c","unresolved":true,"context_lines":[{"line_number":84,"context_line":"        self.configuration.goodness_function \u003d None\r"},{"line_number":85,"context_line":"        self.driver \u003d macrosan_nas.MacrosanNasDriver(\r"},{"line_number":86,"context_line":"            configuration\u003dself.configuration)\r"},{"line_number":87,"context_line":"        self.resutl_success_storage_pools \u003d {\r"},{"line_number":88,"context_line":"            \u0027code\u0027: 0,\r"},{"line_number":89,"context_line":"            \u0027message\u0027: \u0027success\u0027,\r"},{"line_number":90,"context_line":"            \u0027data\u0027: [{\r"}],"source_content_type":"text/x-python","patch_set":23,"id":"9f77322d_dfd630a7","line":87,"range":{"start_line":87,"start_character":13,"end_line":87,"end_character":19},"updated":"2022-08-31 02:05:59.000000000","message":"nit: result_","commit_id":"297fbc00f699a4e2ca98c86056b260bf85b71cf8"}]}
