7.43. Merger Definitions

7.43.1. mergers cisco

class nettoolkit.facts_finder.mergers.cisco.CiscoMerge(fg, capture_tfsm_file, use_cdp)[source]

Bases: Merged

Class which merges generator and modifier data for Cisco. Inherits Merged class

Parameters:
  • fg (generator object) – Facts generator object from generators

  • capture_tfsm_file (str) – file name of configuration capture

  • use_cdp (bool) – defines for cisco use cdp neighbors or not. Some cases where lldp is disabled using cdp to identify neighbors.

add_fg_dfs()[source]

add facts generator data frames to merged dictionary

get_facts_modifiers()[source]

retrives cisco modifier databse in a dictionary format and store it within object as pdf_dict

7.43.2. mergers juniper

class nettoolkit.facts_finder.mergers.juniper.JuniperMerge(fg, capture_tfsm_file, use_cdp)[source]

Bases: Merged

Class which merges generator and modifier data for Juniper. Inherits Merged class

Parameters:
  • fg (generator object) – Facts generator object from generators

  • capture_tfsm_file (str) – file name of configuration capture

  • use_cdp (bool) – defines for cisco use cdp neighbors or not. Some cases where lldp is disabled using cdp to identify neighbors.

add_access_vlan_column_on_physical()[source]

add a new access_vlan column to physical interfaces dataframe

add_vrf_dataframe()[source]

add new dataframe vrf data using generator

get_facts_modifiers()[source]

retrives juniper modifier databse in a dictionary format and store it within object as pdf_dict

nettoolkit.facts_finder.mergers.juniper.add_access_vlan_column(port_mode, vlan)[source]

get access vlan number if port_mode is access

Parameters:
  • port_mode (str) – port mode access/trunk etc..

  • vlan (str) – string of list of vlans

Returns:

allowed vlan number (if access port)

Return type:

str

7.43.3. mergers common

class nettoolkit.facts_finder.mergers.common.Merged(fg, capture_tfsm_file, use_cdp)[source]

Bases: object

Common class defining general methods for mergers of generator and modifiers

Parameters:
  • fg (generator object) – Facts generator object from generators

  • capture_tfsm_file (str) – file name of configuration capture

  • use_cdp (bool) – defines for cisco use cdp neighbors or not. Some cases where lldp is disabled using cdp to identify neighbors.

add_filters()[source]

add filter column to each dataframe except ‘var’

bgp_dataframe()[source]

merges bgp generator and modifier dataframes and drops empty rows for data where no filter value assigned.

generate_interface_numbers()[source]

generates interface number for each interfaces

property hostname

self device property (hostname) from var tab

Returns:

hostname of device

Return type:

str

merge_and_drop_empty_filter_rows(fg_df, fm_df, merge_on)[source]

merges generator and modifier dataframes and drops empty rows for data where no filter value assigned.

Parameters:
  • fg_df (DataFrame) – generator DataFrame

  • fm_df (DataFrame) – modifier DataFrame

  • merge_on (str, list) – column(s) on which merge to happen

Returns:

merged DataFrame

Return type:

DataFrame

merged_interfaces_dataframe()[source]

merges Interfaces generator and modifier dataframes and drops empty rows for data where no filter value assigned.

merged_var_dataframe()[source]

merges system/var generator and modifier dataframes and drops empty rows for data where no filter value assigned.

merged_vrfs_dataframe()[source]

merges vrf generator and modifier dataframes and drops empty rows for data where no filter value assigned.

ospf_dataframe()[source]

merges ospf generator and modifier dataframes and drops empty rows for data where no filter value assigned.

split_interface_dataframe()[source]

splits interface dataframe in to multiple tabs.

static_dataframe()[source]

merges static generator and modifier dataframes and drops empty rows for data where no filter value assigned.

nettoolkit.facts_finder.mergers.common.remove_duplicates(df, *cols)[source]

removes the duplicated _x, _y columns for the given list of columns. Remove duplicate columns as given in additional keyword arguments cols

Parameters:

df (DataFrame) – Pandas DataFrame

Returns:

updated DataFrame

Return type:

DataFrame

nettoolkit.facts_finder.mergers.common.split_to_multiple_tabs(pdf)[source]

splits dataframe to multiple tabs group by filter column

Parameters:

pdf (DataFrame) – Pandas DataFrame

Returns:

updated DataFrame

Return type:

DataFrame