cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
595
Views
0
Helpful
0
Replies

ydk.errors.YModelError: Could not create data node: openconfig-if-ip:ipv4 : Schema node not found.. Path: openconfig-if-ip:ipv4

mzb
Level 1
Level 1

During use of openconfg + ydk, exception prevents the code from an execution. 

My use case here is to create an addressed loopback interface on CSR, IOS-XE 16.8.1 with openconfig + ydk. (if I remove IPv4 semantics, but keep subinterface piece, code executes fine).

 

Could you please advise if this is an version mismatch / misuse / bug? Thank you,

 

(ydk) root@debian:~/ydk# pip freeze | grep ydk
ydk==0.8.0
ydk-models-ietf==0.1.5.post2
ydk-models-openconfig==0.1.5

(same behaviour on latest profile)

 

csr1#show vers
Cisco IOS XE Software, Version 16.08.01a
Cisco IOS Software [Fuji], Virtual XE Software (X86_64_LINUX_IOSD-UNIVERSALK9-M), Version 16.8.1a, RELEASE SOFTWARE (fc1)

 

Code:

import logging
log = logging.getLogger('ydk')
log.setLevel(logging.DEBUG)
handler = logging.StreamHandler()
log.addHandler(handler)

from ydk.models.openconfig import openconfig_interfaces
interfaces = openconfig_interfaces.Interfaces()
interface = interfaces.Interface()
interface.name = "Loopback22"
interface.config.name = "Loopback22"
interface.config.description = "Test"
interface.config.enabled = True
from ydk.models.ietf.iana_if_type import SoftwareLoopback
sl = SoftwareLoopback()
interface.config.type = sl
# configure ip subinterface
subinterface = interface.subinterfaces.Subinterface()
subinterface.index = 0
subinterface.config.index = 0

subinterface.ipv4 = subinterface.Ipv4()

address = subinterface.ipv4.addresses.Address()
address.ip = "192.168.0.1"
address.config.ip = "192.168.0.1"
address.config.prefix_length = 32

subinterface.ipv4.addresses.address.append(address)

interface.subinterfaces.subinterface.append(subinterface)
interfaces.interface.append(interface)

 

from ydk.services import CRUDService
from ydk.providers import NetconfServiceProvider

crud = CRUDService()
provider = NetconfServiceProvider(address="ip", port=830, username="user", password="pass", protocol="ssh")
crud.create(provider, interfaces)

 

Log:

Data is invalid according to the yang model. Libyang error: Invalid keyword "[1-9][0-9]{1,2}|[1-9])\.\.(409[0-4]|"".
Data is invalid according to the yang model. Libyang error: Module "openconfig-vlan-types" parsing failed.
Data is invalid according to the yang model. Libyang error: Importing "openconfig-vlan-types" module into "openconfig-vlan" failed.
Data is invalid according to the yang model. Libyang error: Module "openconfig-vlan" parsing failed.
Data is invalid according to the yang model. Libyang error: Importing "openconfig-vlan" module into "openconfig-if-ip" failed.
Data is invalid according to the yang model. Libyang error: Module "openconfig-if-ip" parsing failed.
Data is invalid according to the yang model. Libyang error: Importing "openconfig-if-ip" module into "cisco-xe-openconfig-if-ip-deviation" failed.
Data is invalid according to the yang model. Libyang error: Module "cisco-xe-openconfig-if-ip-deviation" parsing failed.
Loading module 'cisco-xe-openconfig-interfaces-deviation', revision ''
Getting module 'cisco-xe-openconfig-interfaces-deviation' submodule 'none'
Looking for file in folder: /root/.ydk/129.213.x.x_830
Opening file '/root/.ydk/129.213.x.x_830/cisco-xe-openconfig-interfaces-deviation.yang'
Path found with rev: true. Path without rev: false
Getting module 'openconfig-vlan' submodule 'none'
Looking for file in folder: /root/.ydk/129.213.x.x_830
Opening file '/root/.ydk/129.213.x.x_830/openconfig-vlan.yang'
Path found with rev: true. Path without rev: false
Getting module 'openconfig-vlan-types' submodule 'none'
Looking for file in folder: /root/.ydk/129.213.x.x_830
Opening file '/root/.ydk/129.213.x.x_830/openconfig-vlan-types.yang'
Path found with rev: true. Path without rev: false
Data is invalid according to the yang model. Libyang error: Invalid keyword "[1-9][0-9]{1,2}|[1-9])\.\.(409[0-4]|"".
Data is invalid according to the yang model. Libyang error: Module "openconfig-vlan-types" parsing failed.
Data is invalid according to the yang model. Libyang error: Importing "openconfig-vlan-types" module into "openconfig-vlan" failed.
Data is invalid according to the yang model. Libyang error: Module "openconfig-vlan" parsing failed.
Data is invalid according to the yang model. Libyang error: Importing "openconfig-vlan" module into "cisco-xe-openconfig-interfaces-deviation" failed.
Data is invalid according to the yang model. Libyang error: Module "cisco-xe-openconfig-interfaces-deviation" parsing failed.
Getting child schema with path 'openconfig-if-ip:ipv4' in /openconfig-interfaces:interfaces/interface[name='Loopback22']/subinterfaces/subinterface[index='0']
Data is invalid according to the yang model. Libyang error: Schema node not found. Path: 'openconfig-if-ip:ipv4'
Creating new data path 'openconfig-if-ip:ipv4' with value '' in 'subinterface'
Data is invalid according to the yang model. Libyang error: Schema node not found. Path: 'openconfig-if-ip:ipv4'
Could not create data node: openconfig-if-ip:ipv4 for path: 'openconfig-if-ip:ipv4', value: ''
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/root/ydk/local/lib/python2.7/site-packages/ydk/errors/error_handler.py", line 112, in helper
return func(self, provider, entity, *args, **kwargs)
File "/root/ydk/local/lib/python2.7/site-packages/ydk/services/crud_service.py", line 49, in create
return self._crud.create(provider, entity)
File "/usr/lib/python2.7/contextlib.py", line 35, in __exit__
self.gen.throw(type, value, traceback)
File "/root/ydk/local/lib/python2.7/site-packages/ydk/errors/error_handler.py", line 82, in handle_runtime_error
_raise(_exc)
File "/root/ydk/local/lib/python2.7/site-packages/ydk/errors/error_handler.py", line 56, in _raise
raise exc
ydk.errors.YModelError: Could not create data node: openconfig-if-ip:ipv4 : Schema node not found.. Path: openconfig-if-ip:ipv4

0 Replies 0