)]}'
{"manila/share/drivers/glusterfs_native.py":[{"author":{"_account_id":9521,"name":"Csaba Henk","email":"chenk@redhat.com","username":"chenk"},"change_message_id":"c042534e51e15a5062691a1484f15ceace3eb15a","unresolved":false,"context_lines":[{"line_number":468,"context_line":"            LOG.error(msg)"},{"line_number":469,"context_line":"            raise exception.GlusterfsException(msg)"},{"line_number":470,"context_line":""},{"line_number":471,"context_line":"    def _wipe_gluster_vol(self, gluster_mgr):"},{"line_number":472,"context_line":""},{"line_number":473,"context_line":"        # Reset the SSL options."},{"line_number":474,"context_line":"        try:"}],"source_content_type":"text/x-python","patch_set":1,"id":"3a50d1a3_a706851e","side":"PARENT","line":471,"updated":"2015-07-20 14:33:33.000000000","message":"extend the signature with the ssh management address (available through share\u0027s export_location field)","commit_id":"46eb582b59a4ffbc461d668e84a8adfe4a46b091"},{"author":{"_account_id":8056,"name":"Ramana Raja","email":"rraja@redhat.com","username":"Ram_Raja"},"change_message_id":"1bdd3e8ccce31e8146cfe077c7164c5df60610b9","unresolved":false,"context_lines":[{"line_number":468,"context_line":"            LOG.error(msg)"},{"line_number":469,"context_line":"            raise exception.GlusterfsException(msg)"},{"line_number":470,"context_line":""},{"line_number":471,"context_line":"    def _wipe_gluster_vol(self, gluster_mgr):"},{"line_number":472,"context_line":""},{"line_number":473,"context_line":"        # Reset the SSL options."},{"line_number":474,"context_line":"        try:"}],"source_content_type":"text/x-python","patch_set":1,"id":"3a50d1a3_b571a0aa","side":"PARENT","line":471,"in_reply_to":"3a50d1a3_a706851e","updated":"2015-07-21 09:23:58.000000000","message":"I don\u0027t see any benefit of extending the signature with \"export_location\".\n\"export_location\" holds the same information as gluster_mgr\u0027s \"qualified\" attribute, i.e [remoteuser]@\u003cserverip\u003e:/\u003cvolname\u003e. I\u0027d still need to strip the volume name from \"export_location\" using \"gluster_mgr.volume\" to figure out the server address, [remoteuser]@\u003cserverip\u003e.","commit_id":"46eb582b59a4ffbc461d668e84a8adfe4a46b091"},{"author":{"_account_id":9521,"name":"Csaba Henk","email":"chenk@redhat.com","username":"chenk"},"change_message_id":"e2c3268623f264abfa73467fa4359fc35413cd04","unresolved":false,"context_lines":[{"line_number":468,"context_line":"            LOG.error(msg)"},{"line_number":469,"context_line":"            raise exception.GlusterfsException(msg)"},{"line_number":470,"context_line":""},{"line_number":471,"context_line":"    def _wipe_gluster_vol(self, gluster_mgr):"},{"line_number":472,"context_line":""},{"line_number":473,"context_line":"        # Reset the SSL options."},{"line_number":474,"context_line":"        try:"}],"source_content_type":"text/x-python","patch_set":1,"id":"3a50d1a3_6110304f","side":"PARENT","line":471,"in_reply_to":"3a50d1a3_b571a0aa","updated":"2015-07-21 12:41:11.000000000","message":"yeah sorry, my bad.","commit_id":"46eb582b59a4ffbc461d668e84a8adfe4a46b091"},{"author":{"_account_id":9521,"name":"Csaba Henk","email":"chenk@redhat.com","username":"chenk"},"change_message_id":"c042534e51e15a5062691a1484f15ceace3eb15a","unresolved":false,"context_lines":[{"line_number":594,"context_line":"            return"},{"line_number":595,"context_line":""},{"line_number":596,"context_line":"        try:"},{"line_number":597,"context_line":"            self._wipe_gluster_vol(gmgr)"},{"line_number":598,"context_line":"            self._push_gluster_vol(exp_locn)"},{"line_number":599,"context_line":"        except exception.GlusterfsException:"},{"line_number":600,"context_line":"            msg \u003d (_LE(\"Error during delete_share request for \""}],"source_content_type":"text/x-python","patch_set":1,"id":"3a50d1a3_477221e7","side":"PARENT","line":597,"updated":"2015-07-20 14:33:33.000000000","message":"pass down exp_locn to _wipe_gluster_vol","commit_id":"46eb582b59a4ffbc461d668e84a8adfe4a46b091"},{"author":{"_account_id":9521,"name":"Csaba Henk","email":"chenk@redhat.com","username":"chenk"},"change_message_id":"c042534e51e15a5062691a1484f15ceace3eb15a","unresolved":false,"context_lines":[{"line_number":511,"context_line":"        # extracting Gluster server address, i.e.,\u0027[remote_user]@host\u0027 from the"},{"line_number":512,"context_line":"        # GlusterManager object."},{"line_number":513,"context_line":"        srvaddr \u003d re.sub(\u0027:/\u0027 + gluster_mgr.volume + \u0027$\u0027, \u0027\u0027,"},{"line_number":514,"context_line":"                         gluster_mgr.qualified)"},{"line_number":515,"context_line":""},{"line_number":516,"context_line":"        # Delete the contents of a GlusterFS volume that is temporarily"},{"line_number":517,"context_line":"        # mounted."}],"source_content_type":"text/x-python","patch_set":1,"id":"3a50d1a3_ea3a14cd","line":514,"updated":"2015-07-20 14:33:33.000000000","message":"Instead of reconsrtucting srvaddr manually, use the ssh management address that becomes available through the suggested signature extension.","commit_id":"07ea3560da63b92215b51ab5abac6c1efe78a116"},{"author":{"_account_id":9521,"name":"Csaba Henk","email":"chenk@redhat.com","username":"chenk"},"change_message_id":"c042534e51e15a5062691a1484f15ceace3eb15a","unresolved":false,"context_lines":[{"line_number":523,"context_line":"        # along with the rest of the contents of the volume."},{"line_number":524,"context_line":"        if glusterfs.GlusterManager.numreduct(self.glusterfs_versions[srvaddr]"},{"line_number":525,"context_line":"                                              ) \u003c (3, 7):"},{"line_number":526,"context_line":"            cmd \u003d [\u0027find\u0027, pipes.quote(tmpdir), \u0027-mindepth\u0027, \u00271\u0027, \u0027-delete\u0027]"},{"line_number":527,"context_line":"        else:"},{"line_number":528,"context_line":"            ignored_dirs \u003d [tmpdir + \u0027/.trashcan\u0027,"},{"line_number":529,"context_line":"                            tmpdir + \u0027/.trashcan/internal_op\u0027]"}],"source_content_type":"text/x-python","patch_set":1,"id":"3a50d1a3_4a2b0831","line":526,"updated":"2015-07-20 14:33:33.000000000","message":"pipes.quote is bogus here as the shell won\u0027t be involved in the respective command execution.\n\nIt\u0027s occurrence is not your fault but still it\u0027s better to not reproduce our predecessors faults :)","commit_id":"07ea3560da63b92215b51ab5abac6c1efe78a116"},{"author":{"_account_id":8056,"name":"Ramana Raja","email":"rraja@redhat.com","username":"Ram_Raja"},"change_message_id":"1bdd3e8ccce31e8146cfe077c7164c5df60610b9","unresolved":false,"context_lines":[{"line_number":523,"context_line":"        # along with the rest of the contents of the volume."},{"line_number":524,"context_line":"        if glusterfs.GlusterManager.numreduct(self.glusterfs_versions[srvaddr]"},{"line_number":525,"context_line":"                                              ) \u003c (3, 7):"},{"line_number":526,"context_line":"            cmd \u003d [\u0027find\u0027, pipes.quote(tmpdir), \u0027-mindepth\u0027, \u00271\u0027, \u0027-delete\u0027]"},{"line_number":527,"context_line":"        else:"},{"line_number":528,"context_line":"            ignored_dirs \u003d [tmpdir + \u0027/.trashcan\u0027,"},{"line_number":529,"context_line":"                            tmpdir + \u0027/.trashcan/internal_op\u0027]"}],"source_content_type":"text/x-python","patch_set":1,"id":"3a50d1a3_007db4e6","line":526,"in_reply_to":"3a50d1a3_4a2b0831","updated":"2015-07-21 09:23:58.000000000","message":"Done","commit_id":"07ea3560da63b92215b51ab5abac6c1efe78a116"},{"author":{"_account_id":9521,"name":"Csaba Henk","email":"chenk@redhat.com","username":"chenk"},"change_message_id":"c042534e51e15a5062691a1484f15ceace3eb15a","unresolved":false,"context_lines":[{"line_number":526,"context_line":"            cmd \u003d [\u0027find\u0027, pipes.quote(tmpdir), \u0027-mindepth\u0027, \u00271\u0027, \u0027-delete\u0027]"},{"line_number":527,"context_line":"        else:"},{"line_number":528,"context_line":"            ignored_dirs \u003d [tmpdir + \u0027/.trashcan\u0027,"},{"line_number":529,"context_line":"                            tmpdir + \u0027/.trashcan/internal_op\u0027]"},{"line_number":530,"context_line":"            cmd \u003d [\u0027find\u0027, pipes.quote(tmpdir), \u0027-mindepth\u0027, \u00271\u0027, \u0027!\u0027, \u0027-path\u0027,"},{"line_number":531,"context_line":"                   pipes.quote(ignored_dirs[0]), \u0027!\u0027, \u0027-path\u0027,"},{"line_number":532,"context_line":"                   pipes.quote(ignored_dirs[1]), \u0027-delete\u0027]"}],"source_content_type":"text/x-python","patch_set":1,"id":"3a50d1a3_2afebc6b","line":529,"updated":"2015-07-20 14:33:33.000000000","message":"Please use os.path.join for path assemblage.","commit_id":"07ea3560da63b92215b51ab5abac6c1efe78a116"},{"author":{"_account_id":8056,"name":"Ramana Raja","email":"rraja@redhat.com","username":"Ram_Raja"},"change_message_id":"1bdd3e8ccce31e8146cfe077c7164c5df60610b9","unresolved":false,"context_lines":[{"line_number":526,"context_line":"            cmd \u003d [\u0027find\u0027, pipes.quote(tmpdir), \u0027-mindepth\u0027, \u00271\u0027, \u0027-delete\u0027]"},{"line_number":527,"context_line":"        else:"},{"line_number":528,"context_line":"            ignored_dirs \u003d [tmpdir + \u0027/.trashcan\u0027,"},{"line_number":529,"context_line":"                            tmpdir + \u0027/.trashcan/internal_op\u0027]"},{"line_number":530,"context_line":"            cmd \u003d [\u0027find\u0027, pipes.quote(tmpdir), \u0027-mindepth\u0027, \u00271\u0027, \u0027!\u0027, \u0027-path\u0027,"},{"line_number":531,"context_line":"                   pipes.quote(ignored_dirs[0]), \u0027!\u0027, \u0027-path\u0027,"},{"line_number":532,"context_line":"                   pipes.quote(ignored_dirs[1]), \u0027-delete\u0027]"}],"source_content_type":"text/x-python","patch_set":1,"id":"3a50d1a3_a083a0cb","line":529,"in_reply_to":"3a50d1a3_2afebc6b","updated":"2015-07-21 09:23:58.000000000","message":"Done","commit_id":"07ea3560da63b92215b51ab5abac6c1efe78a116"},{"author":{"_account_id":9521,"name":"Csaba Henk","email":"chenk@redhat.com","username":"chenk"},"change_message_id":"c042534e51e15a5062691a1484f15ceace3eb15a","unresolved":false,"context_lines":[{"line_number":529,"context_line":"                            tmpdir + \u0027/.trashcan/internal_op\u0027]"},{"line_number":530,"context_line":"            cmd \u003d [\u0027find\u0027, pipes.quote(tmpdir), \u0027-mindepth\u0027, \u00271\u0027, \u0027!\u0027, \u0027-path\u0027,"},{"line_number":531,"context_line":"                   pipes.quote(ignored_dirs[0]), \u0027!\u0027, \u0027-path\u0027,"},{"line_number":532,"context_line":"                   pipes.quote(ignored_dirs[1]), \u0027-delete\u0027]"},{"line_number":533,"context_line":""},{"line_number":534,"context_line":"        try:"},{"line_number":535,"context_line":"            self._execute(*cmd, run_as_root\u003dTrue)"}],"source_content_type":"text/x-python","patch_set":1,"id":"3a50d1a3_2a355c45","line":532,"updated":"2015-07-20 14:33:33.000000000","message":"pipes.quote: ditto","commit_id":"07ea3560da63b92215b51ab5abac6c1efe78a116"},{"author":{"_account_id":8056,"name":"Ramana Raja","email":"rraja@redhat.com","username":"Ram_Raja"},"change_message_id":"1bdd3e8ccce31e8146cfe077c7164c5df60610b9","unresolved":false,"context_lines":[{"line_number":529,"context_line":"                            tmpdir + \u0027/.trashcan/internal_op\u0027]"},{"line_number":530,"context_line":"            cmd \u003d [\u0027find\u0027, pipes.quote(tmpdir), \u0027-mindepth\u0027, \u00271\u0027, \u0027!\u0027, \u0027-path\u0027,"},{"line_number":531,"context_line":"                   pipes.quote(ignored_dirs[0]), \u0027!\u0027, \u0027-path\u0027,"},{"line_number":532,"context_line":"                   pipes.quote(ignored_dirs[1]), \u0027-delete\u0027]"},{"line_number":533,"context_line":""},{"line_number":534,"context_line":"        try:"},{"line_number":535,"context_line":"            self._execute(*cmd, run_as_root\u003dTrue)"}],"source_content_type":"text/x-python","patch_set":1,"id":"3a50d1a3_8069c427","line":532,"in_reply_to":"3a50d1a3_2a355c45","updated":"2015-07-21 09:23:58.000000000","message":"Done","commit_id":"07ea3560da63b92215b51ab5abac6c1efe78a116"},{"author":{"_account_id":9521,"name":"Csaba Henk","email":"chenk@redhat.com","username":"chenk"},"change_message_id":"7c1d9df06dac35de381feff96a81f23392a6944d","unresolved":false,"context_lines":[{"line_number":511,"context_line":"        # extracting Gluster server address, i.e.,\u0027[remote_user]@host\u0027 from the"},{"line_number":512,"context_line":"        # GlusterManager object."},{"line_number":513,"context_line":"        srvaddr \u003d re.sub(\u0027:/\u0027 + gluster_mgr.volume + \u0027$\u0027, \u0027\u0027,"},{"line_number":514,"context_line":"                         gluster_mgr.qualified)"},{"line_number":515,"context_line":""},{"line_number":516,"context_line":"        # Delete the contents of a GlusterFS volume that is temporarily"},{"line_number":517,"context_line":"        # mounted."}],"source_content_type":"text/x-python","patch_set":2,"id":"3a50d1a3_21bb0810","line":514,"updated":"2015-07-21 12:47:29.000000000","message":"So you are right, this is good for now. However, we should have a GlusterManager instance method that does this for us.","commit_id":"29456c22999ee63aec529c0808264ba7c84fcb70"}]}
