10-01-2020 01:57 AM - edited 10-01-2020 01:58 AM
Hello again fellow developers!
I come to you yet again in distress and in need of an answer.
I am trying to use the model under to retrieve interface information:
import ydk.models.cisco_ios_xr.Cisco_IOS_XR_ifmgr_cfg as ifmgr_cfg
The code:
model = ifmgr_cfg.InterfaceConfigurations() intconf = ifmgr_cfg.InterfaceConfigurations.InterfaceConfiguration() intconf.interface_name = "TenGigE0/0/0/11.910240030" model.interface_configuration.append(intconf) interface = NetconfService().get(provider=getProvider(), read_filter=intconf) print(interface.description)
Log output:
2020-10-01 08:02:53,323 - ydk - INFO - Executing 'get' RPC on [Cisco-IOS-XR-ifmgr-cfg:interface-configurations]
2020-10-01 08:02:53,341 - ydk - INFO - ============= Sending RPC to device =============
<rpc xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"><get xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<filter><interface-configurations xmlns="http://cisco.com/ns/yang/Cisco-IOS-XR-ifmgr-cfg">
<interface-configuration>
<interface-name>TenGigE0/0/0/11.910240030</interface-name>
</interface-configuration>
</interface-configurations></filter>
</get>
</rpc>
2020-10-01 08:02:53,577 - ydk - INFO - ============= Received RPC from device =============
<?xml version="1.0"?>
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="1">
<data>
<interface-configurations xmlns="http://cisco.com/ns/yang/Cisco-IOS-XR-ifmgr-cfg">
<interface-configuration>
<active>act</active>
<interface-name>TenGigE0/0/0/11.910240030</interface-name>
<interface-mode-non-physical>l2-transport</interface-mode-non-physical>
<description>MAN-CPE:FRD-ASR920-Firdavegen5-LAB:Port24</description>
<ethernet-service xmlns="http://cisco.com/ns/yang/Cisco-IOS-XR-l2-eth-infra-cfg">
<encapsulation>
<outer-tag-type>match-dot1q</outer-tag-type>
<outer-range1-low>1024</outer-range1-low>
<exact/>
</encapsulation>
<rewrite>
<rewrite-type>pop1</rewrite-type>
</rewrite>
</ethernet-service>
<mtus>
<mtu>
<owner>sub_vlan</owner>
<mtu>1522</mtu>
</mtu>
</mtus>
</interface-configuration>
</interface-configurations>
</data>
</rpc-reply>My result:
AttributeError: 'NoneType' object has no attribute 'description'
I am following the doc from here:
Do you mind pointing me in the direction of my mistake?
Kind regards,
Simon Johansen
Solved! Go to Solution.
10-01-2020 10:21 AM
Hi Simon
The issue here is that list element interface-configuration has two keys: active and interface-name.
container interface-configurations {
description
"interface configurations";
list interface-configuration {
key "active interface-name";
description
"The configuration for an interface";
Based on the device output you should have:
model = ifmgr_cfg.InterfaceConfigurations() intconf = ifmgr_cfg.InterfaceConfigurations.InterfaceConfiguration() intconf.interface_name = "TenGigE0/0/0/11.910240030"
intconf.active = 'act' model.interface_configuration.append(intconf) interface = NetconfService().get(provider=getProvider(), read_filter=intconf) print(interface.description)
10-01-2020 10:21 AM
Hi Simon
The issue here is that list element interface-configuration has two keys: active and interface-name.
container interface-configurations {
description
"interface configurations";
list interface-configuration {
key "active interface-name";
description
"The configuration for an interface";
Based on the device output you should have:
model = ifmgr_cfg.InterfaceConfigurations() intconf = ifmgr_cfg.InterfaceConfigurations.InterfaceConfiguration() intconf.interface_name = "TenGigE0/0/0/11.910240030"
intconf.active = 'act' model.interface_configuration.append(intconf) interface = NetconfService().get(provider=getProvider(), read_filter=intconf) print(interface.description)
10-01-2020 11:43 PM
Good morning Yangorelik!
Yet again you come to my rescue, thank you so much
The solution you provided worked right away.
Hope you have a good day,
Kind regards,
Simon Johansen
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide