)]}'
{"cinder/volume/iscsi.py":[{"author":{"_account_id":2243,"name":"John Griffith","email":"john.griffith8@gmail.com","username":"john-griffith"},"change_message_id":"9dc1727f8245dbe5c6dfae3a93f05bba9082193c","unresolved":false,"context_lines":[{"line_number":231,"context_line":"                vol_id \u003d name.split(\u0027:\u0027)[1]"},{"line_number":232,"context_line":"                LOG.error(_(\"Failed to create iscsi target for volume \""},{"line_number":233,"context_line":"                        \"id:%(vol_id)s.\") % locals())"},{"line_number":234,"context_line":"                raise exception.ISCSITargetCreateFailed(volume_id\u003dvol_id)"},{"line_number":235,"context_line":"        return tid"},{"line_number":236,"context_line":""},{"line_number":237,"context_line":"    def remove_iscsi_target(self, tid, lun, vol_id, **kwargs):"}],"source_content_type":"text/x-python","patch_set":19,"id":"AAAAMH%2F%2F4L4%3D","line":234,"updated":"2012-11-18 17:58:39.000000000","message":"Do we need to explicitly clear this persistence info on delete?  Also it doesn\u0027t seem that iet supports adding include directives, but it would be nice if we could come up with something to mimic the behavior we have in tgtadm.","commit_id":"1f0507484937400d42aa09786b82557658abf127"},{"author":{"_account_id":2759,"name":"Huang Zhiteng","email":"winston.d@gmail.com","username":"zhiteng-huang"},"change_message_id":"23a27608151c414c0fe4943d06ef0d909aacb5fa","unresolved":false,"context_lines":[{"line_number":249,"context_line":"                    new_iet_conf_txt \u003d []"},{"line_number":250,"context_line":"                    for line in full_txt:"},{"line_number":251,"context_line":"                        if re.search(vol_uuid, line):"},{"line_number":252,"context_line":"                            next_line_delete \u003d not next_line_delete"},{"line_number":253,"context_line":"                            continue"},{"line_number":254,"context_line":"                        elif not next_line_delete:"},{"line_number":255,"context_line":"                            new_iet_conf_txt.append(line)"}],"source_content_type":"text/x-python","patch_set":20,"id":"AAAAMH%2F%2F0rE%3D","line":252,"updated":"2012-11-21 08:53:49.000000000","message":"This is incorrect.  Once next_line_delete is set to True, there\u0027s no chance that it be set back to False, which results all the lines behind the one contains \u0027vol_uuid\u0027 be deleted.","commit_id":"23d86490eba05bd4d95207a34af8ebc2792b8821"},{"author":{"_account_id":2861,"name":"Vincent Hou","email":"shou@us.ibm.com","username":"houshengbo"},"change_message_id":"9fa5773f289951a65896f57047fda7b6b38bb6dd","unresolved":false,"context_lines":[{"line_number":249,"context_line":"                    new_iet_conf_txt \u003d []"},{"line_number":250,"context_line":"                    for line in full_txt:"},{"line_number":251,"context_line":"                        if re.search(vol_uuid, line):"},{"line_number":252,"context_line":"                            next_line_delete \u003d not next_line_delete"},{"line_number":253,"context_line":"                            continue"},{"line_number":254,"context_line":"                        elif not next_line_delete:"},{"line_number":255,"context_line":"                            new_iet_conf_txt.append(line)"}],"source_content_type":"text/x-python","patch_set":20,"id":"AAAAMH%2F%2F0qY%3D","line":252,"in_reply_to":"AAAAMH%2F%2F0rE%3D","updated":"2012-11-21 09:17:17.000000000","message":"It can be set back to False. For one target, there are three lines. The first line contains the \u0027vol_uuid\u0027 and the third line also contains \u0027vol_uuid\u0027. The second line contains nothing special, so I bring in the boolean next_line_delete to delete the second line. When the third line is met, the boolean next_line_delete is set back to false.","commit_id":"23d86490eba05bd4d95207a34af8ebc2792b8821"},{"author":{"_account_id":1207,"name":"Duncan Thomas","email":"duncan.thomas@gmail.com","username":"duncan-thomas"},"change_message_id":"f4d402f7e1d74b06815a28c2bd2813001b0c0dd7","unresolved":false,"context_lines":[{"line_number":216,"context_line":"            (type, username, password) \u003d chap_auth.split()"},{"line_number":217,"context_line":"            self._new_auth(tid, type, username, password, **kwargs)"},{"line_number":218,"context_line":""},{"line_number":219,"context_line":"        if os.path.exists(FLAGS.iet_conf):"},{"line_number":220,"context_line":"            try:"},{"line_number":221,"context_line":"                volume_conf \u003d \"\"\""},{"line_number":222,"context_line":"                        Target %s"}],"source_content_type":"text/x-python","patch_set":21,"id":"AAAAMH%2F%2F0bI%3D","line":219,"updated":"2012-11-21 14:25:05.000000000","message":"The paranoid coder in me would rather see:\nconf_file \u003d FLAG.iet_conf\nif os.path_exits(conf_file)\n...\n\nPurely for if somebody renames the flag, or copy-and-pastes this code somewhere else or whatever","commit_id":"b05de56f94e1837c56d351f480d73a162ef29ae8"},{"author":{"_account_id":1207,"name":"Duncan Thomas","email":"duncan.thomas@gmail.com","username":"duncan-thomas"},"change_message_id":"f4d402f7e1d74b06815a28c2bd2813001b0c0dd7","unresolved":false,"context_lines":[{"line_number":240,"context_line":"        self._delete_logicalunit(tid, lun, **kwargs)"},{"line_number":241,"context_line":"        self._delete_target(tid, **kwargs)"},{"line_number":242,"context_line":"        vol_uuid \u003d \u0027volume-%s\u0027 % vol_id"},{"line_number":243,"context_line":"        if os.path.exists(FLAGS.iet_conf):"},{"line_number":244,"context_line":"            with utils.temporary_chown(FLAGS.iet_conf):"},{"line_number":245,"context_line":"                try:"},{"line_number":246,"context_line":"                    iet_conf_text \u003d open(FLAGS.iet_conf, \u0027r+\u0027)"}],"source_content_type":"text/x-python","patch_set":21,"id":"AAAAMH%2F%2F0bE%3D","line":243,"updated":"2012-11-21 14:25:05.000000000","message":"As above","commit_id":"b05de56f94e1837c56d351f480d73a162ef29ae8"},{"author":{"_account_id":2243,"name":"John Griffith","email":"john.griffith8@gmail.com","username":"john-griffith"},"change_message_id":"baaebf67de11e7d952a0be0d3c96117dbf3b69b0","unresolved":false,"context_lines":[{"line_number":239,"context_line":"    def remove_iscsi_target(self, tid, lun, vol_id, **kwargs):"},{"line_number":240,"context_line":"        LOG.info(_(\u0027Removing volume: %s\u0027) % vol_id)"},{"line_number":241,"context_line":"        self._delete_logicalunit(tid, lun, **kwargs)"},{"line_number":242,"context_line":"        self._delete_target(tid, **kwargs)"},{"line_number":243,"context_line":"        conf_file \u003d FLAGS.iet_conf"},{"line_number":244,"context_line":"        if os.path.exists(conf_file):"},{"line_number":245,"context_line":"            with utils.temporary_chown(FLAGS.iet_conf):"}],"source_content_type":"text/x-python","patch_set":23,"id":"AAAAMH%2F%2F0XY%3D","line":242,"updated":"2012-11-21 15:17:09.000000000","message":"Using just the passed in vol_id as you changed it here seems sufficient and is nice and tidy.","commit_id":"97c9854faa2d55ccdf60cf145e8a361a603a3f52"},{"author":{"_account_id":2759,"name":"Huang Zhiteng","email":"winston.d@gmail.com","username":"zhiteng-huang"},"change_message_id":"2bf039ae6695c9078434da2a681794eceb125b0b","unresolved":false,"context_lines":[{"line_number":242,"context_line":"        self._delete_target(tid, **kwargs)"},{"line_number":243,"context_line":"        conf_file \u003d FLAGS.iet_conf"},{"line_number":244,"context_line":"        if os.path.exists(conf_file):"},{"line_number":245,"context_line":"            with utils.temporary_chown(FLAGS.iet_conf):"},{"line_number":246,"context_line":"                try:"},{"line_number":247,"context_line":"                    iet_conf_text \u003d open(FLAGS.iet_conf, \u0027r+\u0027)"},{"line_number":248,"context_line":"                    full_txt \u003d iet_conf_text.readlines()"}],"source_content_type":"text/x-python","patch_set":23,"id":"AAAAMH%2F%2F0Wo%3D","line":245,"updated":"2012-11-21 15:33:24.000000000","message":"Since you already have a \u0027conf_file\u0027, you should just use it here.","commit_id":"97c9854faa2d55ccdf60cf145e8a361a603a3f52"},{"author":{"_account_id":2759,"name":"Huang Zhiteng","email":"winston.d@gmail.com","username":"zhiteng-huang"},"change_message_id":"2bf039ae6695c9078434da2a681794eceb125b0b","unresolved":false,"context_lines":[{"line_number":244,"context_line":"        if os.path.exists(conf_file):"},{"line_number":245,"context_line":"            with utils.temporary_chown(FLAGS.iet_conf):"},{"line_number":246,"context_line":"                try:"},{"line_number":247,"context_line":"                    iet_conf_text \u003d open(FLAGS.iet_conf, \u0027r+\u0027)"},{"line_number":248,"context_line":"                    full_txt \u003d iet_conf_text.readlines()"},{"line_number":249,"context_line":"                    new_iet_conf_txt \u003d []"},{"line_number":250,"context_line":"                    count \u003d 0"}],"source_content_type":"text/x-python","patch_set":23,"id":"AAAAMH%2F%2F0Wk%3D","line":247,"updated":"2012-11-21 15:33:24.000000000","message":"otto","commit_id":"97c9854faa2d55ccdf60cf145e8a361a603a3f52"}]}
