]> git.proxmox.com Git - mirror_frr.git/blobdiff - snapcraft/snapcraft.yaml.in
Merge pull request #2870 from AnuradhaKaruppiah/bgp-default-del
[mirror_frr.git] / snapcraft / snapcraft.yaml.in
index a20a1d0392f297ec8524878e5f16532463104b5a..b70d6efee2c094dba976ad2a841c0faf240301f6 100644 (file)
@@ -1,10 +1,11 @@
 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 and LDP 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
@@ -16,8 +17,9 @@ apps:
             - network
             - network-bind
             - network-control
+        aliases: [vtysh]
     version:
-        command: sbin/zebra --version
+        command: bin/show_version
     readme:
         command: bin/cat $SNAP/doc/README.usage.md
     zebra:
@@ -83,6 +85,50 @@ apps:
             - network
             - network-bind
             - network-control
+    nhrpd:
+        command: bin/nhrpd-service
+        daemon: simple
+        plugs:
+            - network
+            - network-bind
+            - network-control
+    babeld:
+        command: bin/babeld-service
+        daemon: simple
+        plugs:
+            - 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:
         command: sbin/zebra -f $SNAP_DATA/zebra.conf --pid_file $SNAP_DATA/zebra.pid --socket $SNAP_DATA/zsock --vty_socket $SNAP_DATA
         plugs:
@@ -90,7 +136,7 @@ apps:
             - 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
@@ -132,15 +178,70 @@ apps:
             - network-bind
             - network-control
     ldpd-debug:
-        command: sbin/ldpd -f $SNAP_DATA/pimd.conf --pid_file $SNAP_DATA/pimd.pid --socket $SNAP_DATA/zsock --ctl_socket $SNAP_DATA --vty_socket $SNAP_DATA
+        command: sbin/ldpd -f $SNAP_DATA/ldpd.conf --pid_file $SNAP_DATA/ldpd.pid --socket $SNAP_DATA/zsock --ctl_socket $SNAP_DATA --vty_socket $SNAP_DATA
+        plugs:
+            - network
+            - network-bind
+            - network-control
+    nhrpd-debug:
+        command: sbin/nhrpd -f $SNAP_DATA/nhrpd.conf --pid_file $SNAP_DATA/nhrpd.pid --socket $SNAP_DATA/zsock --vty_socket $SNAP_DATA
+        plugs:
+            - network
+            - network-bind
+            - network-control
+    babeld-debug:
+        command: sbin/babeld -f $SNAP_DATA/babeld.conf --pid_file $SNAP_DATA/babeld.pid --socket $SNAP_DATA/zsock --vty_socket $SNAP_DATA
+        plugs:
+            - 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
@@ -148,7 +249,6 @@ parts:
            - gawk
            - libreadline-dev
            - texinfo
-           - dejagnu
            - libncurses5-dev
            - texlive-latex-base
            - texlive-generic-recommended
@@ -161,6 +261,12 @@ parts:
            - chrpath
            - pkg-config
            - libjson-c-dev
+           - libc-ares-dev
+           - bison
+           - flex
+           - python3-dev
+           - protobuf-c-compiler
+           - python3-sphinx
         stage-packages:
            - coreutils
            - iproute2
@@ -170,15 +276,12 @@ parts:
            - libtinfo5
            - libreadline6
            - libjson-c2
+           - libc-ares2
+           - libatm1
+           - libprotobuf-c1
         plugin: autotools
         source: ../frr-@PACKAGE_VERSION@.tar.gz
         configflags:
-            - --with-cflags=-g
-            - --with-cflags=-O0
-            - --with-cflags=-std=gnu99
-            - --with-cflags=-fpie
-            - --with-cflags=-fno-omit-frame-pointer
-            - --with-cflags=-Wall
             - --enable-vtysh
             - --enable-isisd
             - --enable-watchfrr
@@ -187,11 +290,13 @@ parts:
             - --enable-multipath=64
             - --enable-rtadv
             - --enable-irdp
-            - --enable-gcc-rdynamic
             - --enable-user=root
             - --enable-group=root
             - --enable-pimd
             - --enable-ldpd
+            - --enable-fpm
+            - --enable-protobuf
+            - --enable-rpki
             - --enable-configfile-mask=0640
             - --enable-logfile-mask=0640 
             - --localstatedir=/var/run
@@ -212,6 +317,11 @@ parts:
             ripd.conf.default: etc/frr/ripd.conf.default
             ripngd.conf.default: etc/frr/ripngd.conf.default
             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
@@ -232,4 +342,5 @@ parts:
         organize:
             README.usage.md: doc/README.usage.md
             README.snap_build.md: doc/README.snap_build.md
+            extra_version_info.txt: doc/extra_version_info.txt