@ -73,22 +73,24 @@ class Netconf(NetconfBase):
] )
install_filter = build_xml ( ' install ' , install_meta , opcode = ' filter ' )
reply = self . get ( install_filter )
ele_boot_variable = etree_find ( reply , ' boot-variable/boot-variable ' )
if ele_boot_variable is not None :
device_info [ ' network_os_image ' ] = re . split ( ' [:|,] ' , ele_boot_variable . text ) [ 1 ]
ele_package_name = etree_find ( reply , ' package-name ' )
if ele_package_name is not None :
device_info [ ' network_os_package ' ] = ele_package_name . text
device_info [ ' network_os_version ' ] = re . split ( ' - ' , ele_package_name . text ) [ - 1 ]
hostname_filter = build_xml ( ' host-names ' , opcode = ' filter ' )
reply = self . get ( hostname_filter )
hostname_ele = etree_find ( reply , ' host-name ' )
device_info [ ' network_os_hostname ' ] = hostname_ele . text if hostname_ele is not None else None
try :
reply = self . get ( install_filter )
resp = remove_namespaces ( re . sub ( r ' < \ ?xml version= " 1.0 " encoding= " UTF-8 " \ ?> ' , ' ' , reply ) )
ele_boot_variable = etree_find ( resp , ' boot-variable/boot-variable ' )
if ele_boot_variable is not None :
device_info [ ' network_os_image ' ] = re . split ( ' [:|,] ' , ele_boot_variable . text ) [ 1 ]
ele_package_name = etree_find ( reply , ' package-name ' )
if ele_package_name is not None :
device_info [ ' network_os_package ' ] = ele_package_name . text
device_info [ ' network_os_version ' ] = re . split ( ' - ' , ele_package_name . text ) [ - 1 ]
hostname_filter = build_xml ( ' host-names ' , opcode = ' filter ' )
reply = self . get ( hostname_filter )
resp = remove_namespaces ( re . sub ( r ' < \ ?xml version= " 1.0 " encoding= " UTF-8 " \ ?> ' , ' ' , reply ) )
hostname_ele = etree_find ( resp . strip ( ) , ' host-name ' )
device_info [ ' network_os_hostname ' ] = hostname_ele . text if hostname_ele is not None else None
except Exception as exc :
self . _connection . queue_message ( ' vvvv ' , ' Fail to retrieve device info %s ' % exc )
return device_info
def get_capabilities ( self ) :