Bug 1383645 - NameError: global name 'readline' is not defined
Summary: NameError: global name 'readline' is not defined
Keywords:
Status: CLOSED WONTFIX
Alias: None
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: targetcli
Version: 7.3
Hardware: Unspecified
OS: Unspecified
medium
high
Target Milestone: rc
: ---
Assignee: Maurizio Lombardi
QA Contact: Filip Suba
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2016-10-11 10:55 UTC by Jaroslav Kortus
Modified: 2021-09-06 12:34 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2020-12-15 07:47:00 UTC
Target Upstream Version:


Attachments (Terms of Use)

Description Jaroslav Kortus 2016-10-11 10:55:19 UTC
Description of problem:
When running targetcli via non-interactive shell, following traceback occurs.
    #  File "/usr/bin/targetcli", line 121, in <module>
    #   main()
    #  File "/usr/bin/targetcli", line 111, in main
    #    shell.run_interactive()
    #  File "/usr/lib/python2.7/site-packages/configshell_fb/shell.py", line 899, in run_interactive
    #    readline.set_completer(old_completer)
    # NameError: global name 'readline' is not defined

Version-Release number of selected component (if applicable):
targetcli-2.1.fb41-3.el7.noarch

How reproducible:
100%

Steps to Reproduce:
1. run targetcli < commands.txt with non-interactive shell
2.
3.

Actual results:
traceback

Expected results:
successful execution

Additional info:
Example of python code that will run an non-interactive shell:

def shell(cmd,complain_only=False):
    ''' runs a shell command and returns stdout '''
    log.debug("SHELL: %s" % cmd)
    p = subprocess.Popen(cmd,shell=True,stdout=subprocess.PIPE,stderr=subprocess.PIPE, bufsize=99999)
    stdout, stderr = p.communicate()
    p.wait()
    if p.returncode > 0:
        if complain_only:
            log.error("SHELL ERROR: %s" % stderr)
        else:
            raise Exception("Command failed(EC=%s): %s\nOutput: %s\nError-Output:%s" % (p.returncode, cmd, stdout, stderr))
    return stdout

Comment 3 ddiss 2019-08-01 12:46:17 UTC
This is fixed via:

commit 82f79eb2f967ecd820d531488d0b64d6015b1aaf
Author: Chongshi Zhang <zhangcho.com>
Date:   Tue Dec 13 10:56:27 2016 -0600

    Fix the readline not defined bug

Comment 5 RHEL Program Management 2020-12-15 07:47:00 UTC
After evaluating this issue, there are no plans to address it further or fix it in an upcoming release.  Therefore, it is being closed.  If plans change such that this issue will be fixed in an upcoming release, then the bug can be reopened.


Note You need to log in before you can comment on or make changes to this bug.