pyang icon indicating copy to clipboard operation
pyang copied to clipboard

Error when trying to generate sample XML skeleton from ietf-rip.yang

Open rwestphal opened this issue 7 years ago • 1 comments

Problem:

$ pyang --version
pyang 1.7.5
$
$ pyang -p /usr/local/share/yang -f sample-xml-skeleton --sample-xml-skeleton-defaults -o ietf-rip.xml [email protected] [email protected]
Traceback (most recent call last):
  File "/usr/local/bin/pyang", line 4, in <module>
    __import__('pkg_resources').run_script('pyang==1.7.5', 'pyang')
  File "/usr/local/lib/python2.7/dist-packages/pkg_resources/__init__.py", line 654, in run_script
    self.require(requires)[0].run_script(script_name, ns)
  File "/usr/local/lib/python2.7/dist-packages/pkg_resources/__init__.py", line 1434, in run_script
    exec(code, namespace, namespace)
  File "/usr/local/lib/python2.7/dist-packages/pyang-1.7.5-py2.7.egg/EGG-INFO/scripts/pyang", line 450, in <module>
    run()
  File "/usr/local/lib/python2.7/dist-packages/pyang-1.7.5-py2.7.egg/EGG-INFO/scripts/pyang", line 419, in run
    emit_obj.emit(ctx, modules, fd)
  File "/usr/local/lib/python2.7/dist-packages/pyang-1.7.5-py2.7.egg/pyang/plugins/sample-xml-skeleton.py", line 120, in emit
    self.process_children(yam, self.top, None, path)
  File "/usr/local/lib/python2.7/dist-packages/pyang-1.7.5-py2.7.egg/pyang/plugins/sample-xml-skeleton.py", line 140, in process_children
    ch, elem, module, path)
  File "/usr/local/lib/python2.7/dist-packages/pyang-1.7.5-py2.7.egg/pyang/plugins/sample-xml-skeleton.py", line 151, in container
    self.process_children(node, nel, newm, path)
  File "/usr/local/lib/python2.7/dist-packages/pyang-1.7.5-py2.7.egg/pyang/plugins/sample-xml-skeleton.py", line 140, in process_children
    ch, elem, module, path)
  File "/usr/local/lib/python2.7/dist-packages/pyang-1.7.5-py2.7.egg/pyang/plugins/sample-xml-skeleton.py", line 151, in container
    self.process_children(node, nel, newm, path)
  File "/usr/local/lib/python2.7/dist-packages/pyang-1.7.5-py2.7.egg/pyang/plugins/sample-xml-skeleton.py", line 140, in process_children
    ch, elem, module, path)
  File "/usr/local/lib/python2.7/dist-packages/pyang-1.7.5-py2.7.egg/pyang/plugins/sample-xml-skeleton.py", line 184, in list
    self.process_children(node, nel, newm, path, node.i_key)
  File "/usr/local/lib/python2.7/dist-packages/pyang-1.7.5-py2.7.egg/pyang/plugins/sample-xml-skeleton.py", line 140, in process_children
    ch, elem, module, path)
  File "/usr/local/lib/python2.7/dist-packages/pyang-1.7.5-py2.7.egg/pyang/plugins/sample-xml-skeleton.py", line 144, in container
    nel, newm, path = self.sample_element(node, elem, module, path)
  File "/usr/local/lib/python2.7/dist-packages/pyang-1.7.5-py2.7.egg/pyang/plugins/sample-xml-skeleton.py", line 218, in sample_element
    res.attrib["xmlns"] = self.ns_uri[mm]
KeyError: <pyang.statements.Statement object at 0x5578348dab50>

The same command works perfectly for the ietf-ospf YANG module:

$ pyang -p /usr/local/share/yang -f sample-xml-skeleton --sample-xml-skeleton-defaults -o ietf-ospf.xml --verbose [email protected] [email protected]

Any help would be appreciated.

rwestphal avatar Jul 28 '18 13:07 rwestphal

If you pass ietf-isis and ietf-ospf as well this works.

mbj4668 avatar Apr 25 '19 10:04 mbj4668