def run(self, cli_opts): try: decision_routes = self.get_decision_route_db(cli_opts) fib_routes = self.get_fib_route_db(cli_opts) agent_routes = self.client.getRouteTableByClient( self.client.client_id) lm_links = self.get_lm_link_db(cli_opts).interfaceDetails except Exception as e: print('Failed to validate Fib routes.') print('Exception: {}'.format(e)) sys.exit(1) res1, _ = utils.compare_route_db( decision_routes, fib_routes, ['Decision', 'Openr-Fib'], cli_opts.enable_color, ) res2, _ = utils.compare_route_db( fib_routes, agent_routes, ['Openr-Fib', 'FibAgent'], cli_opts.enable_color, ) res3, _ = utils.validate_route_nexthops( fib_routes, lm_links, ['Openr-Fib', 'LinkMonitor'], cli_opts.enable_color, ) return 0 if res1 and res2 and res3 else -1
def run(self, cli_opts): try: decision_routes = self.get_decision_route_db(cli_opts) fib_routes = self.get_fib_route_db(cli_opts) agent_routes = self.client.getRouteTableByClient(self.client.client_id) lm_links = self.get_lm_link_db(cli_opts).interfaceDetails except Exception as e: print("Failed to validate Fib routes.") print("Exception: {}".format(e)) return 1 res1, _ = utils.compare_route_db( decision_routes, fib_routes, ["Decision", "Openr-Fib"], cli_opts.enable_color, ) res2, _ = utils.compare_route_db( fib_routes, agent_routes, ["Openr-Fib", "FibAgent"], cli_opts.enable_color ) res3, _ = utils.validate_route_nexthops( fib_routes, lm_links, ["Openr-Fib", "LinkMonitor"], cli_opts.enable_color ) return 0 if res1 and res2 and res3 else -1
def run(self, cli_opts): try: # fetch routes from decision module (decision_unicast_routes, decision_mpls_routes) = utils.get_shortest_routes( decision_client.DecisionClient(cli_opts).get_route_db()) # fetch routes from fib module (fib_unicast_routes, fib_mpls_routes) = utils.get_shortest_routes( fib_client.FibClient(cli_opts).get_route_db()) # fetch route from net_agent module agent_unicast_routes = self.client.getRouteTableByClient( self.client.client_id) agent_mpls_routes = self.client.getMplsRouteTableByClient( self.client.client_id) # fetch link_db from link-monitor module lm_links = lm_client.LMClient( cli_opts).dump_links().interfaceDetails except Exception as e: print("Failed to validate Fib routes.") print("Exception: {}".format(e)) raise e # return 1 (res1_unicast, _) = utils.compare_route_db( decision_unicast_routes, fib_unicast_routes, "unicast", ["Decision:unicast", "Openr-Fib:unicast"], cli_opts.enable_color, ) (res1_mpls, _) = utils.compare_route_db( decision_mpls_routes, fib_mpls_routes, "mpls", ["Decision:mpls", "Openr-Fib:mpls"], cli_opts.enable_color, ) (res2_unicast, _) = utils.compare_route_db( fib_unicast_routes, agent_unicast_routes, "unicast", ["Openr-Fib:unicast", "FibAgent:unicast"], cli_opts.enable_color, ) (res2_mpls, _) = utils.compare_route_db( fib_mpls_routes, agent_mpls_routes, "mpls", ["Openr-Fib:mpls", "FibAgent:mpls"], cli_opts.enable_color, ) (res3, _) = utils.validate_route_nexthops( fib_unicast_routes, lm_links, ["Openr-Fib:unicast", "LinkMonitor"], cli_opts.enable_color, ) return (0 if res1_unicast and res1_mpls and res2_unicast and res2_mpls and res3 else -1)
def run(self, cli_opts): all_success = True try: decision_route_db = None fib_route_db = None lm_links = None with get_openr_ctrl_client(cli_opts.host, cli_opts) as client: # fetch routes from decision module decision_route_db = client.getRouteDbComputed("") # fetch routes from fib module fib_route_db = client.getRouteDb() # fetch link_db from link-monitor module lm_links = client.getInterfaces().interfaceDetails (decision_unicast_routes, decision_mpls_routes ) = utils.get_shortest_routes(decision_route_db) (fib_unicast_routes, fib_mpls_routes) = utils.get_shortest_routes(fib_route_db) # fetch route from net_agent module agent_unicast_routes = self.client.getRouteTableByClient( self.client.client_id) except Exception as e: print("Failed to validate Fib routes.") print("Exception: {}".format(e)) raise e # return 1 (ret, _) = utils.compare_route_db( decision_unicast_routes, fib_unicast_routes, "unicast", ["Decision:unicast", "Openr-Fib:unicast"], cli_opts.enable_color, ) all_success = all_success and ret (ret, _) = utils.compare_route_db( decision_mpls_routes, fib_mpls_routes, "mpls", ["Decision:mpls", "Openr-Fib:mpls"], cli_opts.enable_color, ) all_success = all_success and ret (ret, _) = utils.compare_route_db( fib_unicast_routes, agent_unicast_routes, "unicast", ["Openr-Fib:unicast", "FibAgent:unicast"], cli_opts.enable_color, ) all_success = all_success and ret # for backward compatibily of Open/R binary try: agent_mpls_routes = self.client.getMplsRouteTableByClient( self.client.client_id) except Exception as e: print("Pls check Open/R version. Exception: {}".format(e)) else: (ret, _) = utils.compare_route_db( fib_mpls_routes, agent_mpls_routes, "mpls", ["Openr-Fib:mpls", "FibAgent:mpls"], cli_opts.enable_color, ) all_success = all_success and ret (ret, _) = utils.validate_route_nexthops( fib_unicast_routes, lm_links, ["Openr-Fib:unicast", "LinkMonitor"], cli_opts.enable_color, ) all_success = all_success and ret return 0 if all_success else -1