name: frr
version: @VERSION@
-summary: FRRouting BGP/OSPFv2/OSPFv3/ISIS/RIP/RIPng/PIM/LDP routing daemon
-description: BGP/OSPFv2/OSPFv3/ISIS/RIP/RIPng/PIM routing daemon
+summary: FRRouting BGP/OSPFv2/OSPFv3/ISIS/RIP/RIPng/PIM/LDP/EIGRP/BFD routing daemon
+description: BGP/OSPFv2/OSPFv3/ISIS/RIP/RIPng/PIM/LDP/EIGRP/BFD routing daemon
FRRouting (FRR) is free software which manages TCP/IP based routing
protocols. It supports BGP4, BGP4+, OSPFv2, OSPFv3, IS-IS, RIPv1, RIPv2,
- RIPng, PIM, LDP and Babel as well as the IPv6 versions of these.
+ RIPng, PIM, LDP, Babel, EIGRP, PBR (Policy-based routing) and BFD as well as
+ the IPv6 versions of these.
FRRouting (frr) is a fork of Quagga.
confinement: strict
grade: devel
- network
- network-bind
- network-control
+ eigrpd:
+ command: bin/eigrpd-service
+ daemon: simple
+ plugs:
+ - network
+ - network-bind
+ - network-control
+ pbrd:
+ command: bin/pbrd-service
+ daemon: simple
+ plugs:
+ - network
+ - network-bind
+ - network-control
+ staticd:
+ command: bin/staticd-service
+ daemon: simple
+ plugs:
+ - network
+ - network-bind
+ - network-control
+ bfdd:
+ command: bin/bfdd-service
+ daemon: simple
+ plugs:
+ - network
+ - network-bind
+ - network-control
set:
command: bin/set-options
zebra-debug:
- network-bind
- network-control
bgpd-debug:
- command: sbin/bgpd -f $SNAP_DATA/bgpd.conf --pid_file $SNAP_DATA/bgpd.pid --socket $SNAP_DATA/zsock --vty_socket $SNAP_DATA
+ command: sbin/bgpd -f $SNAP_DATA/bgpd.conf --pid_file $SNAP_DATA/bgpd.pid --socket $SNAP_DATA/zsock --vty_socket $SNAP_DATA --moduledir $SNAP/lib/frr/modules `cat $SNAP_DATA/rpki.conf 2> /dev/null`
plugs:
- network
- network-bind
- network
- network-bind
- network-control
-
+ eigrpd-debug:
+ command: sbin/eigrpd -f $SNAP_DATA/eigrpd.conf --pid_file $SNAP_DATA/eigrpd.pid --socket $SNAP_DATA/zsock --vty_socket $SNAP_DATA
+ plugs:
+ - network
+ - network-bind
+ - network-control
+ pbrd-debug:
+ command: sbin/pbrd -f $SNAP_DATA/pbrd.conf --pid_file $SNAP_DATA/pbrd.pid --socket $SNAP_DATA/zsock --vty_socket $SNAP_DATA
+ plugs:
+ - network
+ - network-bind
+ - network-control
+ staticd-debug:
+ command: sbin/staticd -f $SNAP_DATA/staticd.conf --pid_file $SNAP_DATA/staticd.pid --socket $SNAP_DATA/zsock --vty_socket $SNAP_DATA
+ plugs:
+ - network
+ - network-bind
+ - network-control
+ bfdd-debug:
+ command: sbin/bfdd -f $SNAP_DATA/bfdd.conf --pid_file $SNAP_DATA/bfdd.pid --socket $SNAP_DATA/zsock --vty_socket $SNAP_DATA --bfdctl $SNAP_DATA/bfdd.sock
+ plugs:
+ - network
+ - network-bind
+ - network-control
+
parts:
+ rtrlib:
+ build-packages:
+ - cmake
+ - make
+ - gcc
+ - libssh-dev
+ stage-packages:
+ - libssh-4
+ prime:
+ - lib/x86_64-linux-gnu/librtr.so*
+ - usr/lib/x86_64-linux-gnu/libssh.so*
+ source: https://github.com/rtrlib/rtrlib.git
+ source-type: git
+ source-tag: v0.5.0
+ plugin: cmake
+ configflags:
+ - -DCMAKE_BUILD_TYPE=Release
frr:
- build-packages:
+ after: [rtrlib]
+ build-packages:
+ - gcc
- autoconf
- automake
- libtool
- flex
- python3-dev
- protobuf-c-compiler
+ - python3-sphinx
stage-packages:
- coreutils
- iproute2
- --enable-ldpd
- --enable-fpm
- --enable-protobuf
+ - --enable-rpki
- --enable-configfile-mask=0640
- --enable-logfile-mask=0640
- --localstatedir=/var/run
ldpd.conf.default: etc/frr/ldpd.conf.default
nhrpd.conf.default: etc/frr/nhrpd.conf.default
babeld.conf.default: etc/frr/babeld.conf.default
+ eigrpd.conf.default: etc/frr/eigrpd.conf.default
+ pbrd.conf.default: etc/frr/pbrd.conf.default
+ bfdd.conf.default: etc/frr/bfdd.conf.default
vtysh.conf.default: etc/frr/vtysh.conf.default
frr-scripts:
plugin: make