Skip to content

targetcli saveconfig with error message #27

@schoerg

Description

@schoerg

targetcli 3.0.pre4.1~ga55d018 (rtslib 3.0.pre4.1~g1b33ceb)

Linux 4.11.7-041107-lowlatency #201706240231 SMP PREEMPT Sat Jun 24 06:38:59 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
I can't save the config:

Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/configshell/shell.py", line 990, in run_interactive
    self._cli_loop()
  File "/usr/lib/python2.7/dist-packages/configshell/shell.py", line 820, in _cli_loop
    self.run_cmdline(cmdline)
  File "/usr/lib/python2.7/dist-packages/configshell/shell.py", line 934, in run_cmdline
    self._execute_command(path, command, pparams, kparams)
  File "/usr/lib/python2.7/dist-packages/configshell/shell.py", line 909, in _execute_command
    result = target.execute_command(command, pparams, kparams)
  File "/usr/lib/python2.7/dist-packages/targetcli/ui_node.py", line 104, in execute_command
    pparams, kparams)
  File "/usr/lib/python2.7/dist-packages/configshell/node.py", line 1416, in execute_command
    result = method(*pparams, **kparams)
  File "/usr/lib/python2.7/dist-packages/targetcli/ui_node.py", line 123, in ui_command_saveconfig
    CliConfig.save_running_config()
  File "/usr/lib/python2.7/dist-packages/targetcli/cli_config.py", line 64, in save_running_config
    config = Config()
  File "/usr/lib/python2.7/dist-packages/rtslib/config.py", line 133, in __init__
    self._load_policy()
  File "/usr/lib/python2.7/dist-packages/rtslib/config.py", line 144, in _load_policy
    parse_tree = self._policy_parser.parse_file(filepath)
  File "/usr/lib/python2.7/dist-packages/rtslib/config_parser.py", line 144, in parse_file
    return self._parser.parseFile(filepath, parseAll=True).asList()
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 2131, in parseFile
    return self.parseString(file_contents, parseAll)
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 1603, in parseString
    loc, tokens = self._parse( instring, 0 )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 1375, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 3811, in parseImpl
    return super(ZeroOrMore, self).parseImpl(instring, loc, doActions)
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 3735, in parseImpl
    loc, tokens = self_expr_parse( instring, loc, doActions, callPreParse=False )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 1375, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 3605, in parseImpl
    return self.expr._parse( instring, loc, doActions, callPreParse=False )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 1375, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 3605, in parseImpl
    return self.expr._parse( instring, loc, doActions, callPreParse=False )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 1375, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 3283, in parseImpl
    loc, exprtokens = e._parse( instring, loc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 1375, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 3418, in parseImpl
    ret = e._parse( instring, loc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 1375, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 3283, in parseImpl
    loc, exprtokens = e._parse( instring, loc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 1375, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 3874, in parseImpl
    loc, tokens = self.expr._parse( instring, loc, doActions, callPreParse=False )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 1375, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 3418, in parseImpl
    ret = e._parse( instring, loc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 1375, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 3605, in parseImpl
    return self.expr._parse( instring, loc, doActions, callPreParse=False )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 1375, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 3283, in parseImpl
    loc, exprtokens = e._parse( instring, loc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 1375, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 3735, in parseImpl
    loc, tokens = self_expr_parse( instring, loc, doActions, callPreParse=False )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 1375, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 3605, in parseImpl
    return self.expr._parse( instring, loc, doActions, callPreParse=False )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 1375, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 3605, in parseImpl
    return self.expr._parse( instring, loc, doActions, callPreParse=False )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 1375, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 3283, in parseImpl
    loc, exprtokens = e._parse( instring, loc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 1375, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 3418, in parseImpl
    ret = e._parse( instring, loc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 1375, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 3283, in parseImpl
    loc, exprtokens = e._parse( instring, loc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 1375, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 3874, in parseImpl
    loc, tokens = self.expr._parse( instring, loc, doActions, callPreParse=False )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 1375, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 3418, in parseImpl
    ret = e._parse( instring, loc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 1375, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 3605, in parseImpl
    return self.expr._parse( instring, loc, doActions, callPreParse=False )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 1375, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 3283, in parseImpl
    loc, exprtokens = e._parse( instring, loc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 1375, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 3735, in parseImpl
    loc, tokens = self_expr_parse( instring, loc, doActions, callPreParse=False )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 1375, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 3605, in parseImpl
    return self.expr._parse( instring, loc, doActions, callPreParse=False )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 1375, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 3605, in parseImpl
    return self.expr._parse( instring, loc, doActions, callPreParse=False )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 1375, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 3283, in parseImpl
    loc, exprtokens = e._parse( instring, loc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 1375, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 3418, in parseImpl
    ret = e._parse( instring, loc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 1375, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 3283, in parseImpl
    loc, exprtokens = e._parse( instring, loc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 1375, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 3874, in parseImpl
    loc, tokens = self.expr._parse( instring, loc, doActions, callPreParse=False )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 1375, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 3418, in parseImpl
    ret = e._parse( instring, loc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 1375, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 3605, in parseImpl
    return self.expr._parse( instring, loc, doActions, callPreParse=False )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 1375, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 3283, in parseImpl
    loc, exprtokens = e._parse( instring, loc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 1375, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 3735, in parseImpl
    loc, tokens = self_expr_parse( instring, loc, doActions, callPreParse=False )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 1375, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 3605, in parseImpl
    return self.expr._parse( instring, loc, doActions, callPreParse=False )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 1375, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 3605, in parseImpl
    return self.expr._parse( instring, loc, doActions, callPreParse=False )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 1375, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 3283, in parseImpl
    loc, exprtokens = e._parse( instring, loc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 1375, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 3418, in parseImpl
    ret = e._parse( instring, loc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 1375, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 3283, in parseImpl
    loc, exprtokens = e._parse( instring, loc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 1375, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 3874, in parseImpl
    loc, tokens = self.expr._parse( instring, loc, doActions, callPreParse=False )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 1375, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 3418, in parseImpl
    ret = e._parse( instring, loc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 1375, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 3605, in parseImpl
    return self.expr._parse( instring, loc, doActions, callPreParse=False )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 1375, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 3283, in parseImpl
    loc, exprtokens = e._parse( instring, loc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 1375, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 3735, in parseImpl
    loc, tokens = self_expr_parse( instring, loc, doActions, callPreParse=False )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 1375, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 3605, in parseImpl
    return self.expr._parse( instring, loc, doActions, callPreParse=False )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 1375, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 3605, in parseImpl
    return self.expr._parse( instring, loc, doActions, callPreParse=False )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 1375, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 3283, in parseImpl
    loc, exprtokens = e._parse( instring, loc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 1375, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 3418, in parseImpl
    ret = e._parse( instring, loc, doActions )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 1401, in _parseNoCache
    tokens = fn( instring, tokensStart, retTokens )
  File "/usr/local/lib/python2.7/dist-packages/pyparsing.py", line 1045, in wrapper
    ret = func(*args[limit[0]:])
  File "/usr/lib/python2.7/dist-packages/rtslib/config_parser.py", line 228, in _parse_action_attr
    ref_path = " ".join(ref_path.asList())
AttributeError: 'list' object has no attribute 'asList'

No difference if I use the Ubuntu 16.04 package, or compile targetcli and rtsilb from latest git.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions