)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":9535,"name":"Gorka Eguileor","email":"geguileo@redhat.com","username":"Gorka"},"change_message_id":"ee0c3e6bb8b6e043c0ff3f53a7bb9b4999cff71c","unresolved":true,"context_lines":[{"line_number":18,"context_line":"longer need to make a privsep call to run a command, instead we are"},{"line_number":19,"context_line":"reading the minimum number of files and information possible."},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"Change-Id: Idb8b0c22a30e52c7f84a54dd9f410ff657f502a4"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"8a1e3b0c_bd3f8881","line":21,"updated":"2022-07-04 19:04:28.000000000","message":"There is no working FC CI job, so I just tested a local create volume from image using multipathing, and a attach volume to instance using single path and they both worked.","commit_id":"c5076c37cb674dd0aa2102b6b2721cc4b22ca898"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"e559370c123c588a22702ad1d18cdd5fb008b06a","unresolved":false,"context_lines":[{"line_number":18,"context_line":"longer need to make a privsep call to run a command, instead we are"},{"line_number":19,"context_line":"reading the minimum number of files and information possible."},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"Change-Id: Idb8b0c22a30e52c7f84a54dd9f410ff657f502a4"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"7c5c5322_9d467552","line":21,"in_reply_to":"8a1e3b0c_bd3f8881","updated":"2022-07-05 16:42:51.000000000","message":"Ack, Thanks for testing!","commit_id":"c5076c37cb674dd0aa2102b6b2721cc4b22ca898"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":20813,"name":"Sofia Enriquez","email":"lsofia.enriquez@gmail.com","username":"enriquetaso"},"change_message_id":"d608fa72cfe9a606889eefb09edd95252388eb35","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"26e3fa09_566221f3","updated":"2022-07-05 13:56:37.000000000","message":"- NFS CI failed due to https://bugs.launchpad.net/cinder/+bug/1979826. However, it\u0027s not related to this patch. \n- RBD CI failed horribly but it\u0027s not related to this patch. \n","commit_id":"c5076c37cb674dd0aa2102b6b2721cc4b22ca898"},{"author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"change_message_id":"fef8be29be4a04c076a904e48cddfc4f61edc0b2","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"8b3a9dc6_f0db29b5","updated":"2022-07-06 04:00:56.000000000","message":"Aww, I was too late. Anyway...","commit_id":"c5076c37cb674dd0aa2102b6b2721cc4b22ca898"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"8e09742d4a77799fa222d6090d3647f30c02c74c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"03c03543_15c86c98","updated":"2022-07-05 16:41:15.000000000","message":"LGTM","commit_id":"c5076c37cb674dd0aa2102b6b2721cc4b22ca898"}],"os_brick/initiator/linuxfc.py":[{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"8e09742d4a77799fa222d6090d3647f30c02c74c","unresolved":true,"context_lines":[{"line_number":148,"context_line":"    def get_fc_hbas(cls):"},{"line_number":149,"context_line":"        \"\"\"Get the Fibre Channel HBA information from sysfs.\"\"\""},{"line_number":150,"context_line":"        hbas \u003d []"},{"line_number":151,"context_line":"        for hostpath in glob.glob(f\u0027{cls.FC_HOST_SYSFS_PATH}/*\u0027):"},{"line_number":152,"context_line":"            try:"},{"line_number":153,"context_line":"                hba \u003d {\u0027ClassDevice\u0027: os.path.basename(hostpath),"},{"line_number":154,"context_line":"                       \u0027ClassDevicepath\u0027: os.path.realpath(hostpath)}"},{"line_number":155,"context_line":"                for attribute in cls.HBA_ATTRIBUTES:"},{"line_number":156,"context_line":"                    with open(os.path.join(hostpath, attribute), \u0027rt\u0027) as f:"},{"line_number":157,"context_line":"                        hba[attribute] \u003d f.read().strip()"},{"line_number":158,"context_line":"                hbas.append(hba)"},{"line_number":159,"context_line":"            except Exception as exc:"},{"line_number":160,"context_line":"                LOG.warning(f\u0027Could not read attributes for {hostpath}: {exc}\u0027)"}],"source_content_type":"text/x-python","patch_set":1,"id":"a2b9b020_3a47efb4","line":157,"range":{"start_line":151,"start_character":0,"end_line":157,"end_character":57},"updated":"2022-07-05 16:41:15.000000000","message":"would be helpful if we have an example of how files and directories look here and also their content, probably in a docstring or comment","commit_id":"c5076c37cb674dd0aa2102b6b2721cc4b22ca898"},{"author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"change_message_id":"fef8be29be4a04c076a904e48cddfc4f61edc0b2","unresolved":true,"context_lines":[{"line_number":148,"context_line":"    def get_fc_hbas(cls):"},{"line_number":149,"context_line":"        \"\"\"Get the Fibre Channel HBA information from sysfs.\"\"\""},{"line_number":150,"context_line":"        hbas \u003d []"},{"line_number":151,"context_line":"        for hostpath in glob.glob(f\u0027{cls.FC_HOST_SYSFS_PATH}/*\u0027):"},{"line_number":152,"context_line":"            try:"},{"line_number":153,"context_line":"                hba \u003d {\u0027ClassDevice\u0027: os.path.basename(hostpath),"},{"line_number":154,"context_line":"                       \u0027ClassDevicepath\u0027: os.path.realpath(hostpath)}"},{"line_number":155,"context_line":"                for attribute in cls.HBA_ATTRIBUTES:"},{"line_number":156,"context_line":"                    with open(os.path.join(hostpath, attribute), \u0027rt\u0027) as f:"},{"line_number":157,"context_line":"                        hba[attribute] \u003d f.read().strip()"},{"line_number":158,"context_line":"                hbas.append(hba)"},{"line_number":159,"context_line":"            except Exception as exc:"},{"line_number":160,"context_line":"                LOG.warning(f\u0027Could not read attributes for {hostpath}: {exc}\u0027)"}],"source_content_type":"text/x-python","patch_set":1,"id":"2c90a340_27079cac","line":157,"range":{"start_line":151,"start_character":0,"end_line":157,"end_character":57},"in_reply_to":"a2b9b020_3a47efb4","updated":"2022-07-06 04:00:56.000000000","message":"I agree, although this has some examples:\nhttps://github.com/torvalds/linux/blob/master/Documentation/scsi/scsi_fc_transport.rst","commit_id":"c5076c37cb674dd0aa2102b6b2721cc4b22ca898"},{"author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"change_message_id":"fef8be29be4a04c076a904e48cddfc4f61edc0b2","unresolved":true,"context_lines":[{"line_number":156,"context_line":"                    with open(os.path.join(hostpath, attribute), \u0027rt\u0027) as f:"},{"line_number":157,"context_line":"                        hba[attribute] \u003d f.read().strip()"},{"line_number":158,"context_line":"                hbas.append(hba)"},{"line_number":159,"context_line":"            except Exception as exc:"},{"line_number":160,"context_line":"                LOG.warning(f\u0027Could not read attributes for {hostpath}: {exc}\u0027)"},{"line_number":161,"context_line":"        return hbas"},{"line_number":162,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"230f14f0_cb8dcd9d","line":159,"updated":"2022-07-06 04:00:56.000000000","message":"I am very new to Cinder and I don\u0027t know if this practice is considered acceptable, but I am very much against \u0027except Exception\u0027. This makes diagnostics unnecessarily difficult if the exception is something unexpected or undesirable. I\u0027d rather have IOError here.","commit_id":"c5076c37cb674dd0aa2102b6b2721cc4b22ca898"}],"os_brick/tests/initiator/test_linuxfc.py":[{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"8e09742d4a77799fa222d6090d3647f30c02c74c","unresolved":true,"context_lines":[{"line_number":384,"context_line":"    @mock.patch(\u0027glob.glob\u0027, return_value\u003d[\u0027/sys/class/fc_host/host0\u0027,"},{"line_number":385,"context_line":"                                           \u0027/sys/class/fc_host/host2\u0027])"},{"line_number":386,"context_line":"    @mock.patch(\u0027builtins.open\u0027, side_effect\u003dIOError)"},{"line_number":387,"context_line":"    def test_get_fc_hbas_fail(self, mock_open, mock_glob, mock_path):"},{"line_number":388,"context_line":"        hbas \u003d self.lfc.get_fc_hbas()"},{"line_number":389,"context_line":"        mock_glob.assert_called_once_with(\u0027/sys/class/fc_host/*\u0027)"},{"line_number":390,"context_line":"        self.assertListEqual([], hbas)"}],"source_content_type":"text/x-python","patch_set":1,"id":"fc314d64_801b884e","line":387,"range":{"start_line":387,"start_character":25,"end_line":387,"end_character":29},"updated":"2022-07-05 16:41:15.000000000","message":"since we are not actually \"failing\" here (no assertRaises), would it be good to check if the warning was generated for validation?\nI understand we are not calling open for certain files but just for a clear validation check in the test.","commit_id":"c5076c37cb674dd0aa2102b6b2721cc4b22ca898"}]}
