From fccad3fb5c6ed925dc6ec399cf74837a13e3d76a Mon Sep 17 00:00:00 2001 From: Jeff Kala Date: Thu, 29 Jan 2026 13:43:24 -0700 Subject: [PATCH 1/6] update lib mappers for 2026 reconciliation --- docs/user/lib_mapper/ansible.md | 1 + docs/user/lib_mapper/ansible_reverse.md | 1 + docs/user/lib_mapper/napalm.md | 1 + docs/user/lib_mapper/napalm_reverse.md | 1 + docs/user/lib_mapper/netmiko.md | 40 ++++++++++++++++- docs/user/lib_mapper/netmiko_reverse.md | 40 ++++++++++++++++- docs/user/lib_mapper/ntctemplates.md | 39 +++++++++++++++- docs/user/lib_mapper/ntctemplates_reverse.md | 39 +++++++++++++++- docs/user/lib_mapper/running_config.md | 2 +- netutils/lib_mapper.py | 47 ++++++++++++++++++-- 10 files changed, 203 insertions(+), 8 deletions(-) diff --git a/docs/user/lib_mapper/ansible.md b/docs/user/lib_mapper/ansible.md index 99ac5506..3384ebec 100644 --- a/docs/user/lib_mapper/ansible.md +++ b/docs/user/lib_mapper/ansible.md @@ -2,6 +2,7 @@ | ---------- | -- | ------ | | a10.acos_axapi.a10 | → | a10 | | arista.eos.eos | → | arista_eos | +| arubanetworks.aos_switch | → | aruba_os | | arubanetworks.aoscx | → | aruba_aoscx | | ciena.saos6.saos6 | → | ciena_saos | | cisco.asa.asa | → | cisco_asa | diff --git a/docs/user/lib_mapper/ansible_reverse.md b/docs/user/lib_mapper/ansible_reverse.md index 1c2f09dd..771b7748 100644 --- a/docs/user/lib_mapper/ansible_reverse.md +++ b/docs/user/lib_mapper/ansible_reverse.md @@ -3,6 +3,7 @@ | a10 | → | a10.acos_axapi.a10 | | arista_eos | → | arista.eos.eos | | aruba_aoscx | → | arubanetworks.aoscx | +| aruba_os | → | arubanetworks.aos_switch | | bigip_f5 | → | f5networks.f5_bigip.bigip | | ciena_saos | → | ciena.saos6.saos6 | | cisco_asa | → | cisco.asa.asa | diff --git a/docs/user/lib_mapper/napalm.md b/docs/user/lib_mapper/napalm.md index ebed9015..4a6ba2d3 100644 --- a/docs/user/lib_mapper/napalm.md +++ b/docs/user/lib_mapper/napalm.md @@ -1,6 +1,7 @@ | NAPALM | | NORMALIZED | | ---------- | -- | ------ | | aoscx | → | aruba_aoscx | +| arubaoss | → | aruba_os | | asa | → | cisco_asa | | cisco_wlc_ssh | → | cisco_wlc | | eos | → | arista_eos | diff --git a/docs/user/lib_mapper/napalm_reverse.md b/docs/user/lib_mapper/napalm_reverse.md index 6d0b1611..81cc6171 100644 --- a/docs/user/lib_mapper/napalm_reverse.md +++ b/docs/user/lib_mapper/napalm_reverse.md @@ -2,6 +2,7 @@ | ---------- | -- | ------ | | arista_eos | → | eos | | aruba_aoscx | → | aoscx | +| aruba_os | → | arubaoss | | bigip_f5 | → | f5 | | cisco_asa | → | asa | | cisco_ios | → | ios | diff --git a/docs/user/lib_mapper/netmiko.md b/docs/user/lib_mapper/netmiko.md index 117e1bfa..0d45d351 100644 --- a/docs/user/lib_mapper/netmiko.md +++ b/docs/user/lib_mapper/netmiko.md @@ -5,17 +5,25 @@ | adtran_os | → | adtran_os | | adva_fsp150f2 | → | adva_fsp150f2 | | adva_fsp150f3 | → | adva_fsp150f3 | +| alaxala_ax26s | → | alaxala_ax26s | +| alaxala_ax36s | → | alaxala_ax36s | | alcatel_aos | → | alcatel_aos | | alcatel_sros | → | alcatel_sros | | allied_telesis_awplus | → | allied_telesis_awplus | | apresia_aeos | → | apresia_aeos | | arista_eos | → | arista_eos | +| arris_cer | → | arris_cer | | aruba_os | → | aruba_os | | aruba_osswitch | → | aruba_osswitch | | aruba_procurve | → | aruba_procurve | +| asterfusion_asternos | → | asterfusion_asternos | +| audiocode_66 | → | audiocode_66 | +| audiocode_72 | → | audiocode_72 | +| audiocode_shell | → | audiocode_shell | | avaya_ers | → | avaya_ers | | avaya_vsp | → | avaya_vsp | | bigip_f5 | → | bigip_f5 | +| bintec_boss | → | bintec_boss | | broadcom_icos | → | broadcom_icos | | brocade_fastiron | → | brocade_fastiron | | brocade_fos | → | brocade_fos | @@ -24,21 +32,28 @@ | brocade_vdx | → | brocade_vdx | | brocade_vyos | → | brocade_vyos | | calix_b6 | → | calix_b6 | +| casa_cmts | → | casa_cmts | +| cdot_cros | → | cdot_cros | | centec_os | → | centec_os | | checkpoint_gaia | → | checkpoint_gaia | | ciena_saos | → | ciena_saos | | ciena_saos10 | → | ciena_saos10 | +| ciena_waveserver | → | ciena_waveserver | +| cisco_apic | → | cisco_apic | | cisco_asa | → | cisco_asa | | cisco_ftd | → | cisco_ftd | | cisco_ios | → | cisco_ios | | cisco_nxos | → | cisco_nxos | +| cisco_s200 | → | cisco_s200 | | cisco_s300 | → | cisco_s300 | | cisco_tp | → | cisco_tp | | cisco_wlc | → | cisco_wlc | | cisco_xe | → | cisco_xe | | cisco_xr | → | cisco_xr | | cloudgenix_ion | → | cloudgenix_ion | +| corelight_linux | → | corelight_linux | | coriant | → | coriant | +| cumulus_linux | → | cumulus_linux | | dell_dnos9 | → | dell_dnos9 | | dell_force10 | → | dell_force10 | | dell_isilon | → | dell_isilon | @@ -46,47 +61,65 @@ | dell_os6 | → | dell_os6 | | dell_os9 | → | dell_os9 | | dell_powerconnect | → | dell_powerconnect | +| dell_sonic | → | dell_sonic | +| digi_transport | → | digi_transport | | dlink_ds | → | dlink_ds | +| edgecore_sonic | → | edgecore_sonic | +| ekinops_ek360 | → | ekinops_ek360 | | eltex | → | eltex | | eltex_esr | → | eltex_esr | | endace | → | endace | | enterasys | → | enterasys | | ericsson_ipos | → | ericsson_ipos | +| ericsson_mltn63 | → | ericsson_mltn63 | +| ericsson_mltn66 | → | ericsson_mltn66 | | extreme | → | extreme | | extreme_ers | → | extreme_ers | | extreme_exos | → | extreme_exos | | extreme_netiron | → | extreme_netiron | | extreme_nos | → | extreme_nos | | extreme_slx | → | extreme_slx | +| extreme_tierra | → | extreme_tierra | | extreme_vdx | → | extreme_vdx | | extreme_vsp | → | extreme_vsp | | extreme_wing | → | extreme_wing | | f5_linux | → | bigip_f5 | | f5_ltm | → | bigip_f5 | | f5_tmsh | → | bigip_f5 | +| fiberstore_fsos | → | fiberstore_fsos | +| fiberstore_fsosv2 | → | fiberstore_fsosv2 | | flexvnf | → | flexvnf | | fortinet | → | fortinet | | generic | → | generic | | generic_termserver | → | generic_termserver | +| h3c_comware | → | h3c_comware | +| hillstone_stoneos | → | hillstone_stoneos | | hp_comware | → | hp_comware | | hp_procurve | → | hp_procurve | | huawei | → | huawei | | huawei_olt | → | huawei_olt | | huawei_smartax | → | huawei_smartax | +| huawei_smartaxmmi | → | huawei_smartaxmmi | +| huawei_vrp | → | huawei_vrp | | huawei_vrpv8 | → | huawei_vrpv8 | +| infinera_packet | → | infinera_packet | | ipinfusion_ocnos | → | ipinfusion_ocnos | | juniper | → | juniper | | juniper_junos | → | juniper_junos | | juniper_screenos | → | juniper_screenos | | keymile | → | keymile | | keymile_nos | → | keymile_nos | +| lancom_lcossx4 | → | lancom_lcossx4 | | linux | → | linux | +| maipu | → | maipu | | mellanox | → | mellanox | | mellanox_mlnxos | → | mellanox_mlnxos | | mikrotik_routeros | → | mikrotik_routeros | | mikrotik_switchos | → | mikrotik_switchos | +| moxa_nos | → | moxa_nos | | mrv_lx | → | mrv_lx | | mrv_optiswitch | → | mrv_optiswitch | +| nec_ix | → | nec_ix | | netapp_cdot | → | netapp_cdot | | netgear_prosafe | → | netgear_prosafe | | netscaler | → | netscaler | @@ -101,15 +134,20 @@ | raisecom_roap | → | raisecom_roap | | ruckus_fastiron | → | ruckus_fastiron | | ruijie_os | → | ruijie_os | +| silverpeak_vxoa | → | silverpeak_vxoa | | sixwind_os | → | sixwind_os | | sophos_sfos | → | sophos_sfos | +| telcosystems_binos | → | telcosystems_binos | +| teldat_cit | → | teldat_cit | | tplink_jetstream | → | tplink_jetstream | | ubiquiti_edge | → | ubiquiti_edge | | ubiquiti_edgerouter | → | ubiquiti_edgerouter | | ubiquiti_edgeswitch | → | ubiquiti_edgeswitch | | ubiquiti_unifiswitch | → | ubiquiti_unifiswitch | +| vertiv_mph | → | vertiv_mph | | vyatta_vyos | → | vyatta_vyos | | vyos | → | vyos | | watchguard_fireware | → | watchguard_fireware | | yamaha | → | yamaha | -| zte_zxros | → | zte_zxros | \ No newline at end of file +| zte_zxros | → | zte_zxros | +| zyxel_os | → | zyxel_os | \ No newline at end of file diff --git a/docs/user/lib_mapper/netmiko_reverse.md b/docs/user/lib_mapper/netmiko_reverse.md index 721355a3..a3a3d048 100644 --- a/docs/user/lib_mapper/netmiko_reverse.md +++ b/docs/user/lib_mapper/netmiko_reverse.md @@ -5,17 +5,25 @@ | adtran_os | → | adtran_os | | adva_fsp150f2 | → | adva_fsp150f2 | | adva_fsp150f3 | → | adva_fsp150f3 | +| alaxala_ax26s | → | alaxala_ax26s | +| alaxala_ax36s | → | alaxala_ax36s | | alcatel_aos | → | alcatel_aos | | alcatel_sros | → | alcatel_sros | | allied_telesis_awplus | → | allied_telesis_awplus | | apresia_aeos | → | apresia_aeos | | arista_eos | → | arista_eos | +| arris_cer | → | arris_cer | | aruba_os | → | aruba_os | | aruba_osswitch | → | aruba_osswitch | | aruba_procurve | → | aruba_procurve | +| asterfusion_asternos | → | asterfusion_asternos | +| audiocode_66 | → | audiocode_66 | +| audiocode_72 | → | audiocode_72 | +| audiocode_shell | → | audiocode_shell | | avaya_ers | → | avaya_ers | | avaya_vsp | → | avaya_vsp | | bigip_f5 | → | bigip_f5 | +| bintec_boss | → | bintec_boss | | broadcom_icos | → | broadcom_icos | | brocade_fastiron | → | brocade_fastiron | | brocade_fos | → | brocade_fos | @@ -24,21 +32,28 @@ | brocade_vdx | → | brocade_vdx | | brocade_vyos | → | brocade_vyos | | calix_b6 | → | calix_b6 | +| casa_cmts | → | casa_cmts | +| cdot_cros | → | cdot_cros | | centec_os | → | centec_os | | checkpoint_gaia | → | checkpoint_gaia | | ciena_saos | → | ciena_saos | | ciena_saos10 | → | ciena_saos10 | +| ciena_waveserver | → | ciena_waveserver | +| cisco_apic | → | cisco_apic | | cisco_asa | → | cisco_asa | | cisco_ftd | → | cisco_ftd | | cisco_ios | → | cisco_ios | | cisco_nxos | → | cisco_nxos | +| cisco_s200 | → | cisco_s200 | | cisco_s300 | → | cisco_s300 | | cisco_tp | → | cisco_tp | | cisco_wlc | → | cisco_wlc | | cisco_xe | → | cisco_xe | | cisco_xr | → | cisco_xr | | cloudgenix_ion | → | cloudgenix_ion | +| corelight_linux | → | corelight_linux | | coriant | → | coriant | +| cumulus_linux | → | cumulus_linux | | dell_dnos9 | → | dell_dnos9 | | dell_force10 | → | dell_force10 | | dell_isilon | → | dell_isilon | @@ -46,44 +61,62 @@ | dell_os6 | → | dell_os6 | | dell_os9 | → | dell_os9 | | dell_powerconnect | → | dell_powerconnect | +| dell_sonic | → | dell_sonic | +| digi_transport | → | digi_transport | | dlink_ds | → | dlink_ds | +| edgecore_sonic | → | edgecore_sonic | +| ekinops_ek360 | → | ekinops_ek360 | | eltex | → | eltex | | eltex_esr | → | eltex_esr | | endace | → | endace | | enterasys | → | enterasys | | ericsson_ipos | → | ericsson_ipos | +| ericsson_mltn63 | → | ericsson_mltn63 | +| ericsson_mltn66 | → | ericsson_mltn66 | | extreme | → | extreme | | extreme_ers | → | extreme_ers | | extreme_exos | → | extreme_exos | | extreme_netiron | → | extreme_netiron | | extreme_nos | → | extreme_nos | | extreme_slx | → | extreme_slx | +| extreme_tierra | → | extreme_tierra | | extreme_vdx | → | extreme_vdx | | extreme_vsp | → | extreme_vsp | | extreme_wing | → | extreme_wing | +| fiberstore_fsos | → | fiberstore_fsos | +| fiberstore_fsosv2 | → | fiberstore_fsosv2 | | flexvnf | → | flexvnf | | fortinet | → | fortinet | | generic | → | generic | | generic_termserver | → | generic_termserver | +| h3c_comware | → | h3c_comware | +| hillstone_stoneos | → | hillstone_stoneos | | hp_comware | → | hp_comware | | hp_procurve | → | hp_procurve | | huawei | → | huawei | | huawei_olt | → | huawei_olt | | huawei_smartax | → | huawei_smartax | +| huawei_smartaxmmi | → | huawei_smartaxmmi | +| huawei_vrp | → | huawei_vrp | | huawei_vrpv8 | → | huawei_vrpv8 | +| infinera_packet | → | infinera_packet | | ipinfusion_ocnos | → | ipinfusion_ocnos | | juniper | → | juniper | | juniper_junos | → | juniper_junos | | juniper_screenos | → | juniper_screenos | | keymile | → | keymile | | keymile_nos | → | keymile_nos | +| lancom_lcossx4 | → | lancom_lcossx4 | | linux | → | linux | +| maipu | → | maipu | | mellanox | → | mellanox | | mellanox_mlnxos | → | mellanox_mlnxos | | mikrotik_routeros | → | mikrotik_routeros | | mikrotik_switchos | → | mikrotik_switchos | +| moxa_nos | → | moxa_nos | | mrv_lx | → | mrv_lx | | mrv_optiswitch | → | mrv_optiswitch | +| nec_ix | → | nec_ix | | netapp_cdot | → | netapp_cdot | | netgear_prosafe | → | netgear_prosafe | | netscaler | → | netscaler | @@ -98,15 +131,20 @@ | raisecom_roap | → | raisecom_roap | | ruckus_fastiron | → | ruckus_fastiron | | ruijie_os | → | ruijie_os | +| silverpeak_vxoa | → | silverpeak_vxoa | | sixwind_os | → | sixwind_os | | sophos_sfos | → | sophos_sfos | +| telcosystems_binos | → | telcosystems_binos | +| teldat_cit | → | teldat_cit | | tplink_jetstream | → | tplink_jetstream | | ubiquiti_edge | → | ubiquiti_edge | | ubiquiti_edgerouter | → | ubiquiti_edgerouter | | ubiquiti_edgeswitch | → | ubiquiti_edgeswitch | | ubiquiti_unifiswitch | → | ubiquiti_unifiswitch | +| vertiv_mph | → | vertiv_mph | | vyatta_vyos | → | vyatta_vyos | | vyos | → | vyos | | watchguard_fireware | → | watchguard_fireware | | yamaha | → | yamaha | -| zte_zxros | → | zte_zxros | \ No newline at end of file +| zte_zxros | → | zte_zxros | +| zyxel_os | → | zyxel_os | \ No newline at end of file diff --git a/docs/user/lib_mapper/ntctemplates.md b/docs/user/lib_mapper/ntctemplates.md index c2bb45de..c591c0b4 100644 --- a/docs/user/lib_mapper/ntctemplates.md +++ b/docs/user/lib_mapper/ntctemplates.md @@ -5,18 +5,26 @@ | adtran_os | → | adtran_os | | adva_fsp150f2 | → | adva_fsp150f2 | | adva_fsp150f3 | → | adva_fsp150f3 | +| alaxala_ax26s | → | alaxala_ax26s | +| alaxala_ax36s | → | alaxala_ax36s | | alcatel_aos | → | alcatel_aos | | alcatel_sros | → | alcatel_sros | | allied_telesis_awplus | → | allied_telesis_awplus | | apresia_aeos | → | apresia_aeos | | arista_eos | → | arista_eos | +| arris_cer | → | arris_cer | | aruba_aoscx | → | aruba_aoscx | | aruba_os | → | aruba_os | | aruba_osswitch | → | aruba_osswitch | | aruba_procurve | → | aruba_procurve | +| asterfusion_asternos | → | asterfusion_asternos | +| audiocode_66 | → | audiocode_66 | +| audiocode_72 | → | audiocode_72 | +| audiocode_shell | → | audiocode_shell | | avaya_ers | → | avaya_ers | | avaya_vsp | → | avaya_vsp | | bigip_f5 | → | bigip_f5 | +| bintec_boss | → | bintec_boss | | broadcom_icos | → | broadcom_icos | | brocade_fastiron | → | brocade_fastiron | | brocade_fos | → | brocade_fos | @@ -25,14 +33,19 @@ | brocade_vdx | → | brocade_vdx | | brocade_vyos | → | brocade_vyos | | calix_b6 | → | calix_b6 | +| casa_cmts | → | casa_cmts | +| cdot_cros | → | cdot_cros | | centec_os | → | centec_os | | checkpoint_gaia | → | checkpoint_gaia | | ciena_saos | → | ciena_saos | | ciena_saos10 | → | ciena_saos10 | +| ciena_waveserver | → | ciena_waveserver | +| cisco_apic | → | cisco_apic | | cisco_asa | → | cisco_asa | | cisco_ftd | → | cisco_ftd | | cisco_ios | → | cisco_ios | | cisco_nxos | → | cisco_nxos | +| cisco_s200 | → | cisco_s200 | | cisco_s300 | → | cisco_s300 | | cisco_tp | → | cisco_tp | | cisco_wlc | → | cisco_wlc | @@ -40,7 +53,9 @@ | cisco_xe | → | cisco_xe | | cisco_xr | → | cisco_xr | | cloudgenix_ion | → | cloudgenix_ion | +| corelight_linux | → | corelight_linux | | coriant | → | coriant | +| cumulus_linux | → | cumulus_linux | | dell_dnos9 | → | dell_dnos9 | | dell_force10 | → | dell_force10 | | dell_isilon | → | dell_isilon | @@ -48,48 +63,65 @@ | dell_os6 | → | dell_os6 | | dell_os9 | → | dell_os9 | | dell_powerconnect | → | dell_powerconnect | +| dell_sonic | → | dell_sonic | +| digi_transport | → | digi_transport | | dlink_ds | → | dlink_ds | +| edgecore_sonic | → | edgecore_sonic | +| ekinops_ek360 | → | ekinops_ek360 | | eltex | → | eltex | | eltex_esr | → | eltex_esr | | endace | → | endace | | enterasys | → | enterasys | | ericsson_ipos | → | ericsson_ipos | +| ericsson_mltn63 | → | ericsson_mltn63 | +| ericsson_mltn66 | → | ericsson_mltn66 | | extreme | → | extreme | | extreme_ers | → | extreme_ers | | extreme_exos | → | extreme_exos | | extreme_netiron | → | extreme_netiron | | extreme_nos | → | extreme_nos | | extreme_slx | → | extreme_slx | +| extreme_tierra | → | extreme_tierra | | extreme_vdx | → | extreme_vdx | | extreme_vsp | → | extreme_vsp | | extreme_wing | → | extreme_wing | | f5_linux | → | bigip_f5 | | f5_ltm | → | bigip_f5 | | f5_tmsh | → | bigip_f5 | +| fiberstore_fsos | → | fiberstore_fsos | +| fiberstore_fsosv2 | → | fiberstore_fsosv2 | | flexvnf | → | flexvnf | | fortinet | → | fortinet | | generic | → | generic | | generic_termserver | → | generic_termserver | +| h3c_comware | → | h3c_comware | +| hillstone_stoneos | → | hillstone_stoneos | | hp_comware | → | hp_comware | | hp_procurve | → | hp_procurve | | huawei | → | huawei | | huawei_olt | → | huawei_olt | | huawei_smartax | → | huawei_smartax | +| huawei_smartaxmmi | → | huawei_smartaxmmi | | huawei_vrp | → | huawei_vrp | | huawei_vrpv8 | → | huawei_vrpv8 | +| infinera_packet | → | infinera_packet | | ipinfusion_ocnos | → | ipinfusion_ocnos | | juniper | → | juniper | | juniper_junos | → | juniper_junos | | juniper_screenos | → | juniper_screenos | | keymile | → | keymile | | keymile_nos | → | keymile_nos | +| lancom_lcossx4 | → | lancom_lcossx4 | | linux | → | linux | +| maipu | → | maipu | | mellanox | → | mellanox | | mellanox_mlnxos | → | mellanox_mlnxos | | mikrotik_routeros | → | mikrotik_routeros | | mikrotik_switchos | → | mikrotik_switchos | +| moxa_nos | → | moxa_nos | | mrv_lx | → | mrv_lx | | mrv_optiswitch | → | mrv_optiswitch | +| nec_ix | → | nec_ix | | netapp_cdot | → | netapp_cdot | | netgear_prosafe | → | netgear_prosafe | | netscaler | → | netscaler | @@ -104,17 +136,22 @@ | raisecom_roap | → | raisecom_roap | | ruckus_fastiron | → | ruckus_fastiron | | ruijie_os | → | ruijie_os | +| silverpeak_vxoa | → | silverpeak_vxoa | | sixwind_os | → | sixwind_os | | sophos_sfos | → | sophos_sfos | +| telcosystems_binos | → | telcosystems_binos | +| teldat_cit | → | teldat_cit | | tplink_jetstream | → | tplink_jetstream | | ubiquiti_edge | → | ubiquiti_edge | | ubiquiti_edgerouter | → | ubiquiti_edgerouter | | ubiquiti_edgeswitch | → | ubiquiti_edgeswitch | | ubiquiti_unifiswitch | → | ubiquiti_unifiswitch | +| vertiv_mph | → | vertiv_mph | | vmware_nsxv | → | vmware_nsxv | | vyatta_vyos | → | vyatta_vyos | | vyos | → | vyos | | watchguard_firebox | → | watchguard_firebox | | watchguard_fireware | → | watchguard_fireware | | yamaha | → | yamaha | -| zte_zxros | → | zte_zxros | \ No newline at end of file +| zte_zxros | → | zte_zxros | +| zyxel_os | → | zyxel_os | \ No newline at end of file diff --git a/docs/user/lib_mapper/ntctemplates_reverse.md b/docs/user/lib_mapper/ntctemplates_reverse.md index aa2bf40c..dbf92762 100644 --- a/docs/user/lib_mapper/ntctemplates_reverse.md +++ b/docs/user/lib_mapper/ntctemplates_reverse.md @@ -5,18 +5,26 @@ | adtran_os | → | adtran_os | | adva_fsp150f2 | → | adva_fsp150f2 | | adva_fsp150f3 | → | adva_fsp150f3 | +| alaxala_ax26s | → | alaxala_ax26s | +| alaxala_ax36s | → | alaxala_ax36s | | alcatel_aos | → | alcatel_aos | | alcatel_sros | → | alcatel_sros | | allied_telesis_awplus | → | allied_telesis_awplus | | apresia_aeos | → | apresia_aeos | | arista_eos | → | arista_eos | +| arris_cer | → | arris_cer | | aruba_aoscx | → | aruba_aoscx | | aruba_os | → | aruba_os | | aruba_osswitch | → | aruba_osswitch | | aruba_procurve | → | aruba_procurve | +| asterfusion_asternos | → | asterfusion_asternos | +| audiocode_66 | → | audiocode_66 | +| audiocode_72 | → | audiocode_72 | +| audiocode_shell | → | audiocode_shell | | avaya_ers | → | avaya_ers | | avaya_vsp | → | avaya_vsp | | bigip_f5 | → | bigip_f5 | +| bintec_boss | → | bintec_boss | | broadcom_icos | → | broadcom_icos | | brocade_fastiron | → | brocade_fastiron | | brocade_fos | → | brocade_fos | @@ -25,21 +33,28 @@ | brocade_vdx | → | brocade_vdx | | brocade_vyos | → | brocade_vyos | | calix_b6 | → | calix_b6 | +| casa_cmts | → | casa_cmts | +| cdot_cros | → | cdot_cros | | centec_os | → | centec_os | | checkpoint_gaia | → | checkpoint_gaia | | ciena_saos | → | ciena_saos | | ciena_saos10 | → | ciena_saos10 | +| ciena_waveserver | → | ciena_waveserver | +| cisco_apic | → | cisco_apic | | cisco_asa | → | cisco_asa | | cisco_ftd | → | cisco_ftd | | cisco_ios | → | cisco_ios | | cisco_nxos | → | cisco_nxos | +| cisco_s200 | → | cisco_s200 | | cisco_s300 | → | cisco_s300 | | cisco_tp | → | cisco_tp | | cisco_wlc | → | cisco_wlc_ssh | | cisco_xe | → | cisco_ios | | cisco_xr | → | cisco_xr | | cloudgenix_ion | → | cloudgenix_ion | +| corelight_linux | → | corelight_linux | | coriant | → | coriant | +| cumulus_linux | → | cumulus_linux | | dell_dnos9 | → | dell_dnos9 | | dell_force10 | → | dell_force10 | | dell_isilon | → | dell_isilon | @@ -47,45 +62,62 @@ | dell_os6 | → | dell_os6 | | dell_os9 | → | dell_os9 | | dell_powerconnect | → | dell_powerconnect | +| dell_sonic | → | dell_sonic | +| digi_transport | → | digi_transport | | dlink_ds | → | dlink_ds | +| edgecore_sonic | → | edgecore_sonic | +| ekinops_ek360 | → | ekinops_ek360 | | eltex | → | eltex | | eltex_esr | → | eltex_esr | | endace | → | endace | | enterasys | → | enterasys | | ericsson_ipos | → | ericsson_ipos | +| ericsson_mltn63 | → | ericsson_mltn63 | +| ericsson_mltn66 | → | ericsson_mltn66 | | extreme | → | extreme | | extreme_ers | → | extreme_ers | | extreme_exos | → | extreme_exos | | extreme_netiron | → | extreme_netiron | | extreme_nos | → | extreme_nos | | extreme_slx | → | extreme_slx | +| extreme_tierra | → | extreme_tierra | | extreme_vdx | → | extreme_vdx | | extreme_vsp | → | extreme_vsp | | extreme_wing | → | extreme_wing | +| fiberstore_fsos | → | fiberstore_fsos | +| fiberstore_fsosv2 | → | fiberstore_fsosv2 | | flexvnf | → | flexvnf | | fortinet | → | fortinet | | generic | → | generic | | generic_termserver | → | generic_termserver | +| h3c_comware | → | h3c_comware | +| hillstone_stoneos | → | hillstone_stoneos | | hp_comware | → | hp_comware | | hp_procurve | → | hp_procurve | | huawei | → | huawei | | huawei_olt | → | huawei_olt | | huawei_smartax | → | huawei_smartax | +| huawei_smartaxmmi | → | huawei_smartaxmmi | | huawei_vrp | → | huawei_vrp | | huawei_vrpv8 | → | huawei_vrpv8 | +| infinera_packet | → | infinera_packet | | ipinfusion_ocnos | → | ipinfusion_ocnos | | juniper | → | juniper | | juniper_junos | → | juniper_junos | | juniper_screenos | → | juniper_screenos | | keymile | → | keymile | | keymile_nos | → | keymile_nos | +| lancom_lcossx4 | → | lancom_lcossx4 | | linux | → | linux | +| maipu | → | maipu | | mellanox | → | mellanox | | mellanox_mlnxos | → | mellanox_mlnxos | | mikrotik_routeros | → | mikrotik_routeros | | mikrotik_switchos | → | mikrotik_switchos | +| moxa_nos | → | moxa_nos | | mrv_lx | → | mrv_lx | | mrv_optiswitch | → | mrv_optiswitch | +| nec_ix | → | nec_ix | | netapp_cdot | → | netapp_cdot | | netgear_prosafe | → | netgear_prosafe | | netscaler | → | netscaler | @@ -100,17 +132,22 @@ | raisecom_roap | → | raisecom_roap | | ruckus_fastiron | → | ruckus_fastiron | | ruijie_os | → | ruijie_os | +| silverpeak_vxoa | → | silverpeak_vxoa | | sixwind_os | → | sixwind_os | | sophos_sfos | → | sophos_sfos | +| telcosystems_binos | → | telcosystems_binos | +| teldat_cit | → | teldat_cit | | tplink_jetstream | → | tplink_jetstream | | ubiquiti_edge | → | ubiquiti_edge | | ubiquiti_edgerouter | → | ubiquiti_edgerouter | | ubiquiti_edgeswitch | → | ubiquiti_edgeswitch | | ubiquiti_unifiswitch | → | ubiquiti_unifiswitch | +| vertiv_mph | → | vertiv_mph | | vmware_nsxv | → | vmware_nsxv | | vyatta_vyos | → | vyatta_vyos | | vyos | → | vyos | | watchguard_firebox | → | watchguard_firebox | | watchguard_fireware | → | watchguard_fireware | | yamaha | → | yamaha | -| zte_zxros | → | zte_zxros | \ No newline at end of file +| zte_zxros | → | zte_zxros | +| zyxel_os | → | zyxel_os | \ No newline at end of file diff --git a/docs/user/lib_mapper/running_config.md b/docs/user/lib_mapper/running_config.md index 64d4bc3a..07dcab86 100644 --- a/docs/user/lib_mapper/running_config.md +++ b/docs/user/lib_mapper/running_config.md @@ -3,7 +3,7 @@ | adva_fsp150f2 | → | show running-config | | adva_fsp150f3 | → | show running-config delta | | arista_eos | → | show running-config | -| aruba_os | → | show running-configuration | +| aruba_os | → | show running-config | | aruba_osswitch | → | show running-config | | aruba_procurve | → | show running-config | | checkpoint_gaia | → | clish -c "show configuration" | diff --git a/netutils/lib_mapper.py b/netutils/lib_mapper.py index 2f473f2d..d5f785ab 100644 --- a/netutils/lib_mapper.py +++ b/netutils/lib_mapper.py @@ -152,17 +152,25 @@ "adtran_os": "adtran_os", "adva_fsp150f2": "adva_fsp150f2", "adva_fsp150f3": "adva_fsp150f3", + "alaxala_ax26s": "alaxala_ax26s", + "alaxala_ax36s": "alaxala_ax36s", "alcatel_aos": "alcatel_aos", "alcatel_sros": "alcatel_sros", "allied_telesis_awplus": "allied_telesis_awplus", "apresia_aeos": "apresia_aeos", "arista_eos": "arista_eos", + "arris_cer": "arris_cer", "aruba_os": "aruba_os", "aruba_osswitch": "aruba_osswitch", "aruba_procurve": "aruba_procurve", + "asterfusion_asternos": "asterfusion_asternos", + "audiocode_66": "audiocode_66", + "audiocode_72": "audiocode_72", + "audiocode_shell": "audiocode_shell", "avaya_ers": "avaya_ers", "avaya_vsp": "avaya_vsp", "bigip_f5": "bigip_f5", # not in netmiko + "bintec_boss": "bintec_boss", "broadcom_icos": "broadcom_icos", "brocade_fastiron": "brocade_fastiron", "brocade_fos": "brocade_fos", @@ -170,22 +178,29 @@ "brocade_nos": "brocade_nos", "brocade_vdx": "brocade_vdx", "brocade_vyos": "brocade_vyos", + "casa_cmts": "casa_cmts", "calix_b6": "calix_b6", + "cdot_cros": "cdot_cros", "centec_os": "centec_os", "checkpoint_gaia": "checkpoint_gaia", "ciena_saos": "ciena_saos", "ciena_saos10": "ciena_saos10", + "ciena_waveserver": "ciena_waveserver", + "cisco_apic": "cisco_apic", "cisco_asa": "cisco_asa", "cisco_ftd": "cisco_ftd", "cisco_ios": "cisco_ios", "cisco_nxos": "cisco_nxos", + "cisco_s200": "cisco_s200", "cisco_s300": "cisco_s300", "cisco_tp": "cisco_tp", "cisco_wlc": "cisco_wlc", "cisco_xe": "cisco_xe", "cisco_xr": "cisco_xr", "cloudgenix_ion": "cloudgenix_ion", + "corelight_linux": "corelight_linux", "coriant": "coriant", + "cumulus_linux": "cumulus_linux", "dell_dnos9": "dell_dnos9", "dell_force10": "dell_force10", "dell_isilon": "dell_isilon", @@ -193,47 +208,65 @@ "dell_os6": "dell_os6", "dell_os9": "dell_os9", "dell_powerconnect": "dell_powerconnect", + "dell_sonic": "dell_sonic", + "digi_transport": "digi_transport", "dlink_ds": "dlink_ds", + "edgecore_sonic": "edgecore_sonic", + "ekinops_ek360": "ekinops_ek360", "eltex": "eltex", "eltex_esr": "eltex_esr", "endace": "endace", "enterasys": "enterasys", "ericsson_ipos": "ericsson_ipos", + "ericsson_mltn63": "ericsson_mltn63", + "ericsson_mltn66": "ericsson_mltn66", "extreme": "extreme", "extreme_ers": "extreme_ers", "extreme_exos": "extreme_exos", "extreme_netiron": "extreme_netiron", "extreme_nos": "extreme_nos", "extreme_slx": "extreme_slx", + "extreme_tierra": "extreme_tierra", "extreme_vdx": "extreme_vdx", "extreme_vsp": "extreme_vsp", "extreme_wing": "extreme_wing", "f5_linux": "bigip_f5", # no reverse "f5_ltm": "bigip_f5", # no reverse "f5_tmsh": "bigip_f5", # no reverse + "fiberstore_fsos": "fiberstore_fsos", + "fiberstore_fsosv2": "fiberstore_fsosv2", "flexvnf": "flexvnf", "fortinet": "fortinet", "generic": "generic", "generic_termserver": "generic_termserver", + "h3c_comware": "h3c_comware", + "hillstone_stoneos": "hillstone_stoneos", "hp_comware": "hp_comware", "hp_procurve": "hp_procurve", "huawei": "huawei", "huawei_olt": "huawei_olt", "huawei_smartax": "huawei_smartax", + "huawei_smartaxmmi": "huawei_smartaxmmi", + "huawei_vrp": "huawei_vrp", "huawei_vrpv8": "huawei_vrpv8", + "infinera_packet": "infinera_packet", "ipinfusion_ocnos": "ipinfusion_ocnos", "juniper": "juniper", "juniper_junos": "juniper_junos", "juniper_screenos": "juniper_screenos", "keymile": "keymile", "keymile_nos": "keymile_nos", + "lancom_lcossx4": "lancom_lcossx4", "linux": "linux", + "maipu": "maipu", "mellanox": "mellanox", "mellanox_mlnxos": "mellanox_mlnxos", "mikrotik_routeros": "mikrotik_routeros", "mikrotik_switchos": "mikrotik_switchos", + "moxa_nos": "moxa_nos", "mrv_lx": "mrv_lx", "mrv_optiswitch": "mrv_optiswitch", + "nec_ix": "nec_ix", "netapp_cdot": "netapp_cdot", "netgear_prosafe": "netgear_prosafe", "netscaler": "netscaler", @@ -248,19 +281,25 @@ "raisecom_roap": "raisecom_roap", "ruckus_fastiron": "ruckus_fastiron", "ruijie_os": "ruijie_os", + "silverpeak_vxoa": "silverpeak_vxoa", "sixwind_os": "sixwind_os", "sophos_sfos": "sophos_sfos", + "telcosystems_binos": "telcosystems_binos", + "teldat_cit": "teldat_cit", "tplink_jetstream": "tplink_jetstream", "ubiquiti_edge": "ubiquiti_edge", "ubiquiti_edgerouter": "ubiquiti_edgerouter", "ubiquiti_edgeswitch": "ubiquiti_edgeswitch", "ubiquiti_unifiswitch": "ubiquiti_unifiswitch", "vyatta_vyos": "vyatta_vyos", + "vertiv_mph": "vertiv_mph", "vyos": "vyos", "watchguard_fireware": "watchguard_fireware", "yamaha": "yamaha", "zte_zxros": "zte_zxros", + "zyxel_os": "zyxel_os", } + # netmiko is the base name, so every key is a value, this ensure that. # Netmiko | Normalized NETMIKO_LIB_MAPPER_REVERSE: t.Dict[str, str] = { @@ -271,7 +310,6 @@ _NTCTEMPLATES_LIB_MAPPER = copy.deepcopy(NETMIKO_LIB_MAPPER) _NTCTEMPLATES_LIB_MAPPER["aruba_aoscx"] = "aruba_aoscx" _NTCTEMPLATES_LIB_MAPPER["cisco_wlc_ssh"] = "cisco_wlc" -_NTCTEMPLATES_LIB_MAPPER["huawei_vrp"] = "huawei_vrp" _NTCTEMPLATES_LIB_MAPPER["vmware_nsxv"] = "vmware_nsxv" _NTCTEMPLATES_LIB_MAPPER["watchguard_firebox"] = "watchguard_firebox" @@ -291,6 +329,7 @@ # NAPALM | Normalized NAPALM_LIB_MAPPER: t.Dict[str, str] = { "aoscx": "aruba_aoscx", + "arubaoss": "aruba_os", "asa": "cisco_asa", "cisco_wlc_ssh": "cisco_wlc", "eos": "arista_eos", @@ -314,7 +353,7 @@ "adva_fsp150f2": "show running-config", "adva_fsp150f3": "show running-config delta", "arista_eos": "show running-config", - "aruba_os": "show running-configuration", + "aruba_os": "show running-config", "aruba_osswitch": "show running-config", "aruba_procurve": "show running-config", "checkpoint_gaia": 'clish -c "show configuration"', @@ -359,6 +398,7 @@ ANSIBLE_LIB_MAPPER: t.Dict[str, str] = { "a10.acos_axapi.a10": "a10", "arista.eos.eos": "arista_eos", + "arubanetworks.aos_switch": "aruba_os", "arubanetworks.aoscx": "aruba_aoscx", "ciena.saos6.saos6": "ciena_saos", "cisco.asa.asa": "cisco_asa", @@ -499,6 +539,7 @@ NAPALM_LIB_MAPPER_REVERSE: t.Dict[str, str] = { "arista_eos": "eos", "aruba_aoscx": "aoscx", + "aruba_os": "arubaoss", "bigip_f5": "f5", "cisco_asa": "asa", "cisco_ios": "ios", @@ -533,6 +574,7 @@ "a10": "a10.acos_axapi.a10", "arista_eos": "arista.eos.eos", "aruba_aoscx": "arubanetworks.aoscx", + "aruba_os": "arubanetworks.aos_switch", "bigip_f5": "f5networks.f5_bigip.bigip", "ciena_saos": "ciena.saos6.saos6", "cisco_asa": "cisco.asa.asa", @@ -681,7 +723,6 @@ _MAIN_LIB_MAPPER["cloudarmor"] = "cloudarmor" _MAIN_LIB_MAPPER["gce"] = "gce" _MAIN_LIB_MAPPER["gcp_hf"] = "gcp_hf" -_MAIN_LIB_MAPPER["huawei_vrp"] = "huawei_vrp" _MAIN_LIB_MAPPER["ipset"] = "ipset" _MAIN_LIB_MAPPER["iptables"] = "iptables" _MAIN_LIB_MAPPER["k8s"] = "k8s" From bac09aaeb0a995720726494dc273b5c511262b85 Mon Sep 17 00:00:00 2001 From: Jeff Kala Date: Thu, 29 Jan 2026 20:08:49 -0700 Subject: [PATCH 2/6] fixes #795, fixes #775, fixes #596 --- changes/775.adderd | 1 + changes/775.fixed | 0 development_scripts.py | 12 ++++++++ docs/user/lib_mapper/ansible.md | 1 + docs/user/lib_mapper/ansible_reverse.md | 1 + docs/user/lib_mapper/ncclient.md | 11 +++++++ docs/user/lib_mapper/ncclient_reverse.md | 15 ++++++++++ netutils/lib_mapper.py | 38 ++++++++++++++++++++++-- 8 files changed, 77 insertions(+), 2 deletions(-) create mode 100644 changes/775.adderd create mode 100644 changes/775.fixed create mode 100644 docs/user/lib_mapper/ncclient.md create mode 100644 docs/user/lib_mapper/ncclient_reverse.md diff --git a/changes/775.adderd b/changes/775.adderd new file mode 100644 index 00000000..5410c964 --- /dev/null +++ b/changes/775.adderd @@ -0,0 +1 @@ +Added a library mapping for `ncclient` which is used for NETCONF communication. diff --git a/changes/775.fixed b/changes/775.fixed new file mode 100644 index 00000000..e69de29b diff --git a/development_scripts.py b/development_scripts.py index 47b7acc3..d633fdfc 100755 --- a/development_scripts.py +++ b/development_scripts.py @@ -120,6 +120,18 @@ "_dict": lib_mapper.NAPALM_LIB_MAPPER_REVERSE, "_file": "docs/user/lib_mapper/napalm_reverse.md", }, + "ncclient": { + "header_src": "NCCLIENT", + "header_dst": "NORMALIZED", + "_dict": lib_mapper.NCCLIENT_LIB_MAPPER, + "_file": "docs/user/lib_mapper/ncclient.md", + }, + "ncclient_reverse": { + "header_src": "NORMALIZED", + "header_dst": "NCCLIENT", + "_dict": lib_mapper.NCCLIENT_LIB_MAPPER_REVERSE, + "_file": "docs/user/lib_mapper/ncclient_reverse.md", + }, "netmiko": { "header_src": "NETMIKO", "header_dst": "NORMALIZED", diff --git a/docs/user/lib_mapper/ansible.md b/docs/user/lib_mapper/ansible.md index 3384ebec..0ff06083 100644 --- a/docs/user/lib_mapper/ansible.md +++ b/docs/user/lib_mapper/ansible.md @@ -6,6 +6,7 @@ | arubanetworks.aoscx | → | aruba_aoscx | | ciena.saos6.saos6 | → | ciena_saos | | cisco.asa.asa | → | cisco_asa | +| cisco.catalystcenter | → | cisco_dnac | | cisco.ios.ios | → | cisco_ios | | cisco.iosxr.iosxr | → | cisco_xr | | cisco.meraki.meraki | → | cisco_meraki | diff --git a/docs/user/lib_mapper/ansible_reverse.md b/docs/user/lib_mapper/ansible_reverse.md index 771b7748..ba7b8d11 100644 --- a/docs/user/lib_mapper/ansible_reverse.md +++ b/docs/user/lib_mapper/ansible_reverse.md @@ -7,6 +7,7 @@ | bigip_f5 | → | f5networks.f5_bigip.bigip | | ciena_saos | → | ciena.saos6.saos6 | | cisco_asa | → | cisco.asa.asa | +| cisco_dnac | → | cisco.catalystcenter | | cisco_ios | → | cisco.ios.ios | | cisco_meraki | → | cisco.meraki.meraki | | cisco_nxos | → | cisco.nxos.nxos | diff --git a/docs/user/lib_mapper/ncclient.md b/docs/user/lib_mapper/ncclient.md new file mode 100644 index 00000000..10876b30 --- /dev/null +++ b/docs/user/lib_mapper/ncclient.md @@ -0,0 +1,11 @@ +| NCCLIENT | | NORMALIZED | +| ---------- | -- | ------ | +| alu | → | alcatel_sros | +| ciena | → | ciena_saos | +| h3c | → | h3c_comware | +| hpcomware | → | hp_comware | +| huawei | → | huawei | +| huaweiyang | → | huawei_vrp | +| iosxe | → | cisco_xe | +| iosxr | → | cisco_xr | +| junos | → | juniper_junos | \ No newline at end of file diff --git a/docs/user/lib_mapper/ncclient_reverse.md b/docs/user/lib_mapper/ncclient_reverse.md new file mode 100644 index 00000000..7a2b68aa --- /dev/null +++ b/docs/user/lib_mapper/ncclient_reverse.md @@ -0,0 +1,15 @@ +| NORMALIZED | | NCCLIENT | +| ---------- | -- | ------ | +| alcatel_sros | → | alu | +| ciena_saos | → | ciena | +| cisco_ios | → | iosxe | +| cisco_nxos | → | nexus | +| cisco_xe | → | iosxe | +| cisco_xr | → | iosxr | +| h3c_comware | → | h3c | +| hp_comware | → | hpcomware | +| huawei | → | huawei | +| huawei_vrp | → | huaweiyang | +| huawei_vrpv8 | → | huaweiyang | +| juniper_junos | → | junos | +| nokia_sros | → | alu | \ No newline at end of file diff --git a/netutils/lib_mapper.py b/netutils/lib_mapper.py index d5f785ab..f50adbcf 100644 --- a/netutils/lib_mapper.py +++ b/netutils/lib_mapper.py @@ -178,8 +178,8 @@ "brocade_nos": "brocade_nos", "brocade_vdx": "brocade_vdx", "brocade_vyos": "brocade_vyos", - "casa_cmts": "casa_cmts", "calix_b6": "calix_b6", + "casa_cmts": "casa_cmts", "cdot_cros": "cdot_cros", "centec_os": "centec_os", "checkpoint_gaia": "checkpoint_gaia", @@ -291,8 +291,8 @@ "ubiquiti_edgerouter": "ubiquiti_edgerouter", "ubiquiti_edgeswitch": "ubiquiti_edgeswitch", "ubiquiti_unifiswitch": "ubiquiti_unifiswitch", - "vyatta_vyos": "vyatta_vyos", "vertiv_mph": "vertiv_mph", + "vyatta_vyos": "vyatta_vyos", "vyos": "vyos", "watchguard_fireware": "watchguard_fireware", "yamaha": "yamaha", @@ -402,6 +402,7 @@ "arubanetworks.aoscx": "aruba_aoscx", "ciena.saos6.saos6": "ciena_saos", "cisco.asa.asa": "cisco_asa", + "cisco.catalystcenter": "cisco_dnac", "cisco.ios.ios": "cisco_ios", "cisco.iosxr.iosxr": "cisco_xr", "cisco.meraki.meraki": "cisco_meraki", @@ -522,6 +523,19 @@ "SRX": "juniper_junos", # no reverse } +# NCCLIENT | Normalized +NCCLIENT_LIB_MAPPER: t.Dict[str, str] = { + "alu": "alcatel_sros", + "ciena": "ciena_saos", + "iosxe": "cisco_xe", + "iosxr": "cisco_xr", + "h3c": "h3c_comware", + "huawei": "huawei", + "huaweiyang": "huawei_vrp", + "hpcomware": "hp_comware", + "junos": "juniper_junos", +} + # NIST | Normalized NIST_LIB_MAPPER: t.Dict[str, str] = { "arista:eos": "arista_eos", @@ -578,6 +592,7 @@ "bigip_f5": "f5networks.f5_bigip.bigip", "ciena_saos": "ciena.saos6.saos6", "cisco_asa": "cisco.asa.asa", + "cisco_dnac": "cisco.catalystcenter", "cisco_ios": "cisco.ios.ios", "cisco_meraki": "cisco.meraki.meraki", "cisco_nxos": "cisco.nxos.nxos", @@ -711,6 +726,23 @@ "paloalto_panos": "paloaltonetworks:pan-os", } +# Normlized | NCCLIENT +NCCLIENT_LIB_MAPPER_REVERSE: t.Dict[str, str] = { + "alcatel_sros": "alu", + "ciena_saos": "ciena", + "cisco_ios": "iosxe", + "cisco_nxos": "nexus", + "cisco_xe": "iosxe", + "cisco_xr": "iosxr", + "h3c_comware": "h3c", + "huawei": "huawei", + "huawei_vrp": "huaweiyang", + "huawei_vrpv8": "huaweiyang", + "hp_comware": "hpcomware", + "juniper_junos": "junos", + "nokia_sros": "alu", +} + # Deep copy the reverse, where there is no actual translation happening with special # consideration for OS's not in netmiko. _MAIN_LIB_MAPPER = copy.deepcopy(NETMIKO_LIB_MAPPER) @@ -751,6 +783,7 @@ "forward_networks": FORWARDNETWORKS_LIB_MAPPER, "hier_config": HIERCONFIG_LIB_MAPPER, "napalm": NAPALM_LIB_MAPPER, + "ncclient": NCCLIENT_LIB_MAPPER, "netmiko": NETMIKO_LIB_MAPPER, "netutils_parser": NETUTILSPARSER_LIB_MAPPER, "nist": NIST_LIB_MAPPER, @@ -769,6 +802,7 @@ "forward_networks": FORWARDNETWORKS_LIB_MAPPER_REVERSE, "hier_config": HIERCONFIG_LIB_MAPPER_REVERSE, "napalm": NAPALM_LIB_MAPPER_REVERSE, + "ncclient": NCCLIENT_LIB_MAPPER_REVERSE, "netmiko": NETMIKO_LIB_MAPPER_REVERSE, "netutils_parser": NETUTILSPARSER_LIB_MAPPER_REVERSE, "nist": NIST_LIB_MAPPER_REVERSE, From 4deefd7dd412a507f30d02743c95fec1ef890d55 Mon Sep 17 00:00:00 2001 From: Jeff Kala Date: Thu, 29 Jan 2026 20:10:34 -0700 Subject: [PATCH 3/6] fix change fragments --- changes/{775.adderd => 775.added} | 0 changes/775.fixed | 1 + 2 files changed, 1 insertion(+) rename changes/{775.adderd => 775.added} (100%) diff --git a/changes/775.adderd b/changes/775.added similarity index 100% rename from changes/775.adderd rename to changes/775.added diff --git a/changes/775.fixed b/changes/775.fixed index e69de29b..84483a60 100644 --- a/changes/775.fixed +++ b/changes/775.fixed @@ -0,0 +1 @@ +Fixed platform mappings to reconcile Netmiko driver support. From e0e11102d0fdfa565502b3e13fa9c4a647786a99 Mon Sep 17 00:00:00 2001 From: Jeff Kala Date: Thu, 29 Jan 2026 20:35:08 -0700 Subject: [PATCH 4/6] remove aoscx from _MAIN_LIB_MAPPER since it is a netmiko driver --- docs/user/lib_mapper/netmiko.md | 1 + docs/user/lib_mapper/netmiko_reverse.md | 1 + netutils/lib_mapper.py | 3 ++- 3 files changed, 4 insertions(+), 1 deletion(-) diff --git a/docs/user/lib_mapper/netmiko.md b/docs/user/lib_mapper/netmiko.md index 0d45d351..23f4af6d 100644 --- a/docs/user/lib_mapper/netmiko.md +++ b/docs/user/lib_mapper/netmiko.md @@ -13,6 +13,7 @@ | apresia_aeos | → | apresia_aeos | | arista_eos | → | arista_eos | | arris_cer | → | arris_cer | +| aruba_aoscx | → | aruba_aoscx | | aruba_os | → | aruba_os | | aruba_osswitch | → | aruba_osswitch | | aruba_procurve | → | aruba_procurve | diff --git a/docs/user/lib_mapper/netmiko_reverse.md b/docs/user/lib_mapper/netmiko_reverse.md index a3a3d048..48fbc2d5 100644 --- a/docs/user/lib_mapper/netmiko_reverse.md +++ b/docs/user/lib_mapper/netmiko_reverse.md @@ -13,6 +13,7 @@ | apresia_aeos | → | apresia_aeos | | arista_eos | → | arista_eos | | arris_cer | → | arris_cer | +| aruba_aoscx | → | aruba_aoscx | | aruba_os | → | aruba_os | | aruba_osswitch | → | aruba_osswitch | | aruba_procurve | → | aruba_procurve | diff --git a/netutils/lib_mapper.py b/netutils/lib_mapper.py index f50adbcf..d5d61de6 100644 --- a/netutils/lib_mapper.py +++ b/netutils/lib_mapper.py @@ -160,6 +160,7 @@ "apresia_aeos": "apresia_aeos", "arista_eos": "arista_eos", "arris_cer": "arris_cer", + "aruba_aoscx": "aruba_aoscx", "aruba_os": "aruba_os", "aruba_osswitch": "aruba_osswitch", "aruba_procurve": "aruba_procurve", @@ -746,7 +747,7 @@ # Deep copy the reverse, where there is no actual translation happening with special # consideration for OS's not in netmiko. _MAIN_LIB_MAPPER = copy.deepcopy(NETMIKO_LIB_MAPPER) -_MAIN_LIB_MAPPER["aruba_aoscx"] = "aruba_aoscx" +# _MAIN_LIB_MAPPER["aruba_aoscx"] = "aruba_aoscx" _MAIN_LIB_MAPPER["cisco_aireos"] = "cisco_aireos" _MAIN_LIB_MAPPER["cisco_dnac"] = "cisco_dnac" _MAIN_LIB_MAPPER["cisco_meraki"] = "cisco_meraki" From 96bf1bfe845c8229a778449cea034954fefad2f0 Mon Sep 17 00:00:00 2001 From: Jeff Kala Date: Thu, 29 Jan 2026 20:45:25 -0700 Subject: [PATCH 5/6] proper tagging of change fragements --- changes/{775.added => 596.added} | 0 changes/683.added | 1 + changes/795.fixed | 1 + 3 files changed, 2 insertions(+) rename changes/{775.added => 596.added} (100%) create mode 100644 changes/683.added create mode 100644 changes/795.fixed diff --git a/changes/775.added b/changes/596.added similarity index 100% rename from changes/775.added rename to changes/596.added diff --git a/changes/683.added b/changes/683.added new file mode 100644 index 00000000..39441e4b --- /dev/null +++ b/changes/683.added @@ -0,0 +1 @@ +Added `aruba_aoscx` to the Netmiko and Netmiko Reverse library mappers as its a supported Netmiko driver. diff --git a/changes/795.fixed b/changes/795.fixed new file mode 100644 index 00000000..a84fd868 --- /dev/null +++ b/changes/795.fixed @@ -0,0 +1 @@ +Fixed the incorrect running configuration command for `aruba_os`. From b831a80eebcf4db4fc9d84d544906ca05907aa03 Mon Sep 17 00:00:00 2001 From: Jeff Kala Date: Thu, 29 Jan 2026 20:47:25 -0700 Subject: [PATCH 6/6] clean up mappings --- netutils/lib_mapper.py | 1 - 1 file changed, 1 deletion(-) diff --git a/netutils/lib_mapper.py b/netutils/lib_mapper.py index d5d61de6..1454adf2 100644 --- a/netutils/lib_mapper.py +++ b/netutils/lib_mapper.py @@ -747,7 +747,6 @@ # Deep copy the reverse, where there is no actual translation happening with special # consideration for OS's not in netmiko. _MAIN_LIB_MAPPER = copy.deepcopy(NETMIKO_LIB_MAPPER) -# _MAIN_LIB_MAPPER["aruba_aoscx"] = "aruba_aoscx" _MAIN_LIB_MAPPER["cisco_aireos"] = "cisco_aireos" _MAIN_LIB_MAPPER["cisco_dnac"] = "cisco_dnac" _MAIN_LIB_MAPPER["cisco_meraki"] = "cisco_meraki"