(self)
| 30 | class CsBgpPeers(CsDataBag): |
| 31 | |
| 32 | def process(self): |
| 33 | logging.info("Processing CsBgpPeers file ==> %s" % self.dbag) |
| 34 | |
| 35 | if self.config.is_vpc(): |
| 36 | self.public_ip = self.cl.get_source_nat_ip() |
| 37 | else: |
| 38 | self.public_ip = self.cl.get_eth2_ip() |
| 39 | |
| 40 | self.peers = {} |
| 41 | for item in self.dbag: |
| 42 | if item == "id": |
| 43 | continue |
| 44 | self._process_dbag_item(self.dbag[item]) |
| 45 | |
| 46 | restart_frr = False |
| 47 | |
| 48 | CsHelper.mkdir(FRR_DIR, 0o755, False) |
| 49 | self.frr_daemon = CsFile(FRR_DAEMONS) |
| 50 | self.frr_daemon.replaceIfFound("bgpd=no", "bgpd=yes") |
| 51 | if self.frr_daemon.commit(): |
| 52 | restart_frr = True |
| 53 | |
| 54 | self.frr_conf = CsFile(FRR_CONFIG) |
| 55 | self.frr_conf.repopulate() |
| 56 | self._pre_set() |
| 57 | self._process_peers() |
| 58 | self._post_set() |
| 59 | if self.frr_conf.commit(): |
| 60 | restart_frr = True |
| 61 | |
| 62 | if restart_frr: |
| 63 | CsHelper.execute("systemctl enable frr") |
| 64 | CsHelper.execute("systemctl restart frr") |
| 65 | |
| 66 | def _process_dbag_item(self, item): |
| 67 | as_number = item['network_as_number'] |
nothing calls this directly
no test coverage detected