Example #1
0
    def run(self):
        logging.info("Starting BGP component...")

        logging.debug("Creating dataplane drivers")
        drivers = findDataplaneDrivers(self.dataplaneConfig, self.bgpConfig)

        for vpnType in self.dataplaneConfig.iterkeys():
            if vpnType not in drivers:
                logging.error("Could not initiate any dataplane driver for %s",
                              vpnType)
                return

        logging.debug("Creating BGP manager")
        self.bgpManager = Manager(self.bgpConfig)

        logging.debug("Creating VPN manager")
        self.vpnManager = VPNManager(self.bgpManager, drivers)

        # BGP component REST API
        logging.debug("Creating REST API")
        bgpapi = RESTAPI(self.apiConfig, self, self.vpnManager,
                         self.catchAllLGLogHandler)
        bgpapi.run()