Accepting request 755955 from home:emendonca:network
Adding working tests; removing _servicedata. OBS-URL: https://build.opensuse.org/request/show/755955 OBS-URL: https://build.opensuse.org/package/show/network/frr?expand=0&rev=1
This commit is contained in:
commit
caada57228
23
.gitattributes
vendored
Normal file
23
.gitattributes
vendored
Normal file
@ -0,0 +1,23 @@
|
||||
## Default LFS
|
||||
*.7z filter=lfs diff=lfs merge=lfs -text
|
||||
*.bsp filter=lfs diff=lfs merge=lfs -text
|
||||
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
||||
*.gem filter=lfs diff=lfs merge=lfs -text
|
||||
*.gz filter=lfs diff=lfs merge=lfs -text
|
||||
*.jar filter=lfs diff=lfs merge=lfs -text
|
||||
*.lz filter=lfs diff=lfs merge=lfs -text
|
||||
*.lzma filter=lfs diff=lfs merge=lfs -text
|
||||
*.obscpio filter=lfs diff=lfs merge=lfs -text
|
||||
*.oxt filter=lfs diff=lfs merge=lfs -text
|
||||
*.pdf filter=lfs diff=lfs merge=lfs -text
|
||||
*.png filter=lfs diff=lfs merge=lfs -text
|
||||
*.rpm filter=lfs diff=lfs merge=lfs -text
|
||||
*.tbz filter=lfs diff=lfs merge=lfs -text
|
||||
*.tbz2 filter=lfs diff=lfs merge=lfs -text
|
||||
*.tgz filter=lfs diff=lfs merge=lfs -text
|
||||
*.ttf filter=lfs diff=lfs merge=lfs -text
|
||||
*.txz filter=lfs diff=lfs merge=lfs -text
|
||||
*.whl filter=lfs diff=lfs merge=lfs -text
|
||||
*.xz filter=lfs diff=lfs merge=lfs -text
|
||||
*.zip filter=lfs diff=lfs merge=lfs -text
|
||||
*.zst filter=lfs diff=lfs merge=lfs -text
|
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
||||
.osc
|
29
fix_tests.patch
Normal file
29
fix_tests.patch
Normal file
@ -0,0 +1,29 @@
|
||||
--- tests/topotests/lib/topotest.py-orig 2019-12-10 23:17:14.241938136 -0300
|
||||
+++ tests/topotests/lib/topotest.py 2019-12-10 23:17:27.978005193 -0300
|
||||
@@ -29,7 +29,10 @@
|
||||
import sys
|
||||
import functools
|
||||
import glob
|
||||
-import StringIO
|
||||
+try:
|
||||
+ from StringIO import StringIO
|
||||
+except ImportError:
|
||||
+ from io import StringIO
|
||||
import subprocess
|
||||
import tempfile
|
||||
import platform
|
||||
--- tests/topotests/lib/common_config.py-orig 2019-12-10 23:17:59.526550785 -0300
|
||||
+++ tests/topotests/lib/common_config.py 2019-12-10 23:18:23.139134928 -0300
|
||||
@@ -28,7 +28,11 @@
|
||||
from functools import wraps
|
||||
from re import search as re_search
|
||||
|
||||
-import StringIO
|
||||
+try:
|
||||
+ from StringIO import StringIO
|
||||
+except ImportError:
|
||||
+ from io import StringIO
|
||||
+
|
||||
import os
|
||||
import ConfigParser
|
||||
import traceback
|
3
frr-frr7.2.tar.xz
Normal file
3
frr-frr7.2.tar.xz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:8c19d7ce84b6e1e8fc612ab2966f256f775510cec4055c675028efb919c1cb0e
|
||||
size 4191880
|
1
frr-tmpfiles.d
Normal file
1
frr-tmpfiles.d
Normal file
@ -0,0 +1 @@
|
||||
d @frr_statedir@ 0751 frr frrvty
|
37
frr.changes
Normal file
37
frr.changes
Normal file
@ -0,0 +1,37 @@
|
||||
-------------------------------------------------------------------
|
||||
Wed Dec 11 23:18:06 UTC 2019 - Erico Mendonca <erico.mendonca@suse.com>
|
||||
|
||||
- fix_tests.patch: correct syntax for Python 3 imports in tests.
|
||||
- Enabling tests
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Dec 11 02:37:42 UTC 2019 - erico.mendonca@suse.com
|
||||
|
||||
- Update to version frr7.2:
|
||||
* zebra: use correct state when installing evpn macs
|
||||
* lib: set entry to xpath in if_update_to_new_vrf
|
||||
* zebra: capture dplane plugin flags
|
||||
* bgpd: Autocomplete neighbor for clear bgp
|
||||
* ospfd,eigrpd: don't take address of packed struct member
|
||||
* bgpd: Prevent crash in bgp_table_range_lookup
|
||||
* bgpd: Fix memory leak in json output of show commands
|
||||
* tests: Test if `distance bgp (1-255) (1-255) (1-255)` works
|
||||
* bgpd: Reflect the distance in RIB when it is changed for an arbitrary afi/safi
|
||||
* bfdd: fix multiple VRF handling
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Dec 10 12:58:21 UTC 2019 - Erico Mendonca <erico.mendonca@suse.com>
|
||||
|
||||
- Updating to version 7.2
|
||||
- Adding systemd scripts
|
||||
- Fixing build and permission issues
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Jun 18 08:59:05 UTC 2019 - Martin Hauke <mardnh@gmx.de>
|
||||
|
||||
- Update to version 7.0.1
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sat Feb 2 13:50:16 UTC 2019 - mardnh@gmx.de
|
||||
|
||||
- Initial package, version 6.0.2
|
658
frr.spec
Normal file
658
frr.spec
Normal file
@ -0,0 +1,658 @@
|
||||
#
|
||||
# spec file for package frr
|
||||
#
|
||||
# Copyright (c) 2019 SUSE LLC
|
||||
# Copyright (c) 2019, Martin Hauke <mardnh@gmx.de>
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
# upon. The license for this file, and modifications and additions to the
|
||||
# file, is the same license as for the pristine package itself (unless the
|
||||
# license for the pristine package is not an Open Source License, in which
|
||||
# case the license is the MIT License). An "Open Source License" is a
|
||||
# license that conforms to the Open Source Definition (Version 1.9)
|
||||
# published by the Open Source Initiative.
|
||||
|
||||
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
||||
#
|
||||
|
||||
%define skip_python2 1
|
||||
|
||||
%if 0%{?suse_version} >= 1210
|
||||
%bcond_without systemd
|
||||
%else
|
||||
%bcond_with systemd
|
||||
%endif
|
||||
|
||||
%define frr_user frr
|
||||
%define frr_group frr
|
||||
%define frrvty_group frrvty
|
||||
%define frr_home %{_localstatedir}/lib/%{name}
|
||||
%define frr_statedir %{_rundir}/%{name}
|
||||
%define frr_daemondir %{_prefix}/lib/frr
|
||||
%bcond_without babeld
|
||||
%bcond_without bfdd
|
||||
%bcond_without bgpd
|
||||
%bcond_without bgp_vnc
|
||||
%bcond_with cumulus
|
||||
%bcond_with datacenter
|
||||
%bcond_without doc
|
||||
%bcond_without eigrpd
|
||||
%bcond_without fpm
|
||||
%bcond_without irdp
|
||||
%bcond_without isisd
|
||||
%bcond_without ldpd
|
||||
%bcond_without multipath
|
||||
%bcond_without nhrpd
|
||||
%bcond_without ospf6d
|
||||
%bcond_without ospfapi
|
||||
%bcond_without ospfclient
|
||||
%bcond_without ospfd
|
||||
%bcond_without pam
|
||||
%bcond_without pbrd
|
||||
%bcond_with pcre
|
||||
%bcond_without pimd
|
||||
%bcond_with protobuf
|
||||
%bcond_without ripd
|
||||
%bcond_without ripngd
|
||||
%bcond_with rpki
|
||||
%bcond_without rtadv
|
||||
%bcond_without snmp
|
||||
%bcond_without sharpd
|
||||
%bcond_without staticd
|
||||
%bcond_without vtysh
|
||||
%bcond_without watchfrr
|
||||
%bcond_without zebra
|
||||
%bcond_with zeromq
|
||||
############################################
|
||||
# TODO:
|
||||
# * Use new init scripts
|
||||
# - https://github.com/FRRouting/frr/issues/3652
|
||||
# - https://github.com/FRRouting/frr/issues/3493
|
||||
# * More Functionals tests
|
||||
Name: frr
|
||||
Version: 7.2
|
||||
Release: 0
|
||||
Summary: FRRouting Routing daemon
|
||||
License: LGPL-2.1-or-later
|
||||
Group: Productivity/Networking/System
|
||||
URL: https://www.frrouting.org
|
||||
#Git-Clone: https://github.com/FRRouting/frr.git
|
||||
Source: %{name}-%{name}%{version}.tar.xz
|
||||
Source1: %{name}-tmpfiles.d
|
||||
Patch0: fix_tests.patch
|
||||
BuildRequires: autoconf
|
||||
BuildRequires: automake
|
||||
BuildRequires: bison >= 2.7
|
||||
BuildRequires: flex
|
||||
BuildRequires: libtool
|
||||
BuildRequires: pkgconfig
|
||||
BuildRequires: readline-devel
|
||||
BuildRequires: systemd-rpm-macros
|
||||
BuildRequires: pkgconfig(json-c)
|
||||
BuildRequires: pkgconfig(libcap)
|
||||
BuildRequires: pkgconfig(libcares)
|
||||
BuildRequires: pkgconfig(libsystemd)
|
||||
BuildRequires: pkgconfig(libyang) >= 0.16.7
|
||||
BuildRequires: python-rpm-macros
|
||||
BuildRequires: %{python_module devel}
|
||||
BuildRequires: %{python_module pytest}
|
||||
BuildRequires: %{python_module mininet}
|
||||
# FIXME: use proper Requires(pre/post/preun/...)
|
||||
PreReq: %{install_info_prereq}
|
||||
Requires(post): %{install_info_prereq}
|
||||
Requires(pre): shadow
|
||||
Requires(preun): %{install_info_prereq}
|
||||
Recommends: logrotate
|
||||
Conflicts: quagga
|
||||
Provides: zebra = %{version}
|
||||
Obsoletes: zebra < %{version}
|
||||
%if %{with systemd}
|
||||
BuildRequires: systemd-rpm-macros
|
||||
%{?systemd_requires}
|
||||
%endif
|
||||
|
||||
%if %{with doc}
|
||||
BuildRequires: makeinfo
|
||||
BuildRequires: %{python_module Sphinx}
|
||||
%endif
|
||||
%if %{with pam}
|
||||
BuildRequires: pam-devel
|
||||
%endif
|
||||
%if %{with pcre}
|
||||
BuildRequires: pkgconfig(libpcre)
|
||||
%endif
|
||||
%if %{with protobuf}
|
||||
BuildRequires: protobuf-c
|
||||
BuildRequires: pkgconfig(libprotobuf-c)
|
||||
%endif
|
||||
%if %{with rpki}
|
||||
BuildRequires: pkgconfig(rtrlib) >= 0.5.0
|
||||
%endif
|
||||
%if %{with snmp}
|
||||
BuildRequires: net-snmp-devel
|
||||
%endif
|
||||
%if %{with zeromq}
|
||||
BuildRequires: pkgconfig(libzmq) >= 4.0.0
|
||||
%endif
|
||||
|
||||
%description
|
||||
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.
|
||||
|
||||
FRR is a fork of Quagga..
|
||||
|
||||
%package -n libfrrfpm_pb0
|
||||
Summary: FRRouting fpm protobuf library
|
||||
Group: System/Libraries
|
||||
|
||||
%description -n libfrrfpm_pb0
|
||||
This library contains forwarding plane manager protobuf definitions
|
||||
for FRRouting.
|
||||
|
||||
%package -n libfrr_pb0
|
||||
Summary: FRRouting protobuf library
|
||||
Group: System/Libraries
|
||||
|
||||
%description -n libfrr_pb0
|
||||
This library contains protobuf memory management for FRRouting..
|
||||
|
||||
%package -n libfrrospfapiclient0
|
||||
Summary: API for FRRouting's OSPFv2 implementation
|
||||
Group: System/Libraries
|
||||
|
||||
%description -n libfrrospfapiclient0
|
||||
This library contains part of the OSPFv2 implementation of FRRouting.
|
||||
|
||||
%if %{with snmp}
|
||||
%package -n libfrrsnmp0
|
||||
Summary: FRRouting snmp library
|
||||
Group: System/Libraries
|
||||
|
||||
%description -n libfrrsnmp0
|
||||
This library contains part of the net-snmp agentx implementation of FRRouting.
|
||||
%endif
|
||||
|
||||
%if %{with zeromq}
|
||||
%package -n libfrrzmq0
|
||||
Summary: FRRouting zeromq library
|
||||
Group: System/Libraries
|
||||
|
||||
%description -n libfrrzmq0
|
||||
This library contains part of the zermomq implementation of FRRouting.
|
||||
%endif
|
||||
|
||||
%package -n libfrr0
|
||||
Summary: FRRouting utility library
|
||||
Group: System/Libraries
|
||||
|
||||
%description -n libfrr0
|
||||
This library contains various utility functions to FRRouting, such as
|
||||
data types, buffers and socket handling.
|
||||
|
||||
%package -n libfrrcares0
|
||||
Summary: FRRouting utility library
|
||||
Group: System/Libraries
|
||||
|
||||
%description -n libfrrcares0
|
||||
This library contains various utility functions to FRRouting, such as
|
||||
data types, buffers and socket handling.
|
||||
|
||||
%package devel
|
||||
Summary: Header and object files for frr development
|
||||
Group: Development/Libraries/C and C++
|
||||
Requires: libfrr0 = %{version}
|
||||
%if %{with protobuf}
|
||||
Requires: libfrr_pb0 = %{version}
|
||||
Requires: libfrrfpm_pb0 = %{version}
|
||||
%endif
|
||||
%if %{with ospfapi}
|
||||
Requires: libfrrospfapiclient0 = %{version}
|
||||
%endif
|
||||
%if %{with snmp}
|
||||
Requires: libfrrsnmp0 = %{version}
|
||||
%endif
|
||||
%if %{with zeromq}
|
||||
Requires: libfrrzmq0 = %{version}
|
||||
%endif
|
||||
|
||||
%description devel
|
||||
The frr-devel package contains the header and object files necessary for
|
||||
developing OSPF-API and frr applications.
|
||||
|
||||
%prep
|
||||
%setup -q -n %{name}-%{name}%{version}
|
||||
%patch0 -p0
|
||||
|
||||
%build
|
||||
# GCC LTO objects must be "fat" to avoid assembly errors
|
||||
export CFLAGS="-ffat-lto-objects"
|
||||
|
||||
autoreconf -fiv
|
||||
%configure \
|
||||
--enable-exampledir=%{_docdir}/%{name}/examples \
|
||||
--sysconfdir=%{_sysconfdir}/%{name} \
|
||||
--localstatedir=%{frr_statedir} \
|
||||
--sbindir=%{frr_daemondir} \
|
||||
--with-moduledir=%{_libdir}/frr/modules \
|
||||
--disable-static \
|
||||
--with-vtysh-pager=%{_bindir}/less \
|
||||
--enable-user=%{frr_user} \
|
||||
--enable-group=%{frr_group} \
|
||||
--enable-vty-group=%{frrvty_group} \
|
||||
--enable-configfile-mask=0640 \
|
||||
--enable-logfile-mask=0640 \
|
||||
%if %{with doc}
|
||||
--enable-doc \
|
||||
--enable-doc-html \
|
||||
%endif
|
||||
%if %{with babeld}
|
||||
--enable-babeld \
|
||||
%else
|
||||
--disable-babeld \
|
||||
%endif
|
||||
%if %{with bfdd}
|
||||
--enable-bfdd \
|
||||
%else
|
||||
--disable-bfdd \
|
||||
%endif
|
||||
%if %{with bgpd}
|
||||
--enable-bgpd \
|
||||
%else
|
||||
--disable-bgpd \
|
||||
%endif
|
||||
%if %{with bgp_vnc}
|
||||
--enable-bgp-vnc \
|
||||
%else
|
||||
--disable-bgp-vnc \
|
||||
%endif
|
||||
%if %{with cumulus}
|
||||
--enable-cumulus \
|
||||
%endif
|
||||
%if %{with datacenter}
|
||||
--enable-datacenter \
|
||||
%endif
|
||||
%if %{with eigrpd}
|
||||
--enable-eigrpd \
|
||||
%else
|
||||
--disable-eigrpd \
|
||||
%endif
|
||||
%if %{with fpm}
|
||||
--enable-fpm \
|
||||
%else
|
||||
--disable-fpm \
|
||||
%endif
|
||||
%if %{with irdp}
|
||||
--enable-irdp \
|
||||
%else
|
||||
--disable-irdp \
|
||||
%endif
|
||||
%if %{with isisd}
|
||||
--enable-isisd \
|
||||
%else
|
||||
--disable-isisd \
|
||||
%endif
|
||||
%if %{with ldpd}
|
||||
--enable-ldpd \
|
||||
%else
|
||||
--disable-ldpd \
|
||||
%endif
|
||||
%if %{with multipath}
|
||||
--enable-multipath=256 \
|
||||
%endif
|
||||
%if %{with nhrpd}
|
||||
--enable-nhrpd \
|
||||
%else
|
||||
--disable-nhrpd \
|
||||
%endif
|
||||
%if %{with snmp}
|
||||
--enable-snmp \
|
||||
%endif
|
||||
%if %{with zeromq}
|
||||
--enable-zeromq \
|
||||
%endif
|
||||
%if %{with ospfd}
|
||||
--enable-ospfd \
|
||||
%else
|
||||
--disable-ospfd \
|
||||
%endif
|
||||
%if %{with ospf6d}
|
||||
--enable-ospf6d \
|
||||
%else
|
||||
--disable-ospf6d \
|
||||
%endif
|
||||
%if %{with ospfapi}
|
||||
--enable-ospfapi \
|
||||
%else
|
||||
--disable-ospfapi \
|
||||
%endif
|
||||
%if %{with ospfclient}
|
||||
--enable-ospfclient \
|
||||
%else
|
||||
--disable-ospfclient \
|
||||
%endif
|
||||
%if %{with pam}
|
||||
--with-libpam \
|
||||
%endif
|
||||
%if %{with pcre}
|
||||
--enable-pcreposix \
|
||||
%endif
|
||||
%if %{with pbrd}
|
||||
--enable-pbrd \
|
||||
%else
|
||||
--disable-pbrd \
|
||||
%endif
|
||||
%if %{with pimd}
|
||||
--enable-pimd \
|
||||
%else
|
||||
--disable-pimd \
|
||||
%endif
|
||||
%if %{with protobuf}
|
||||
--enable-protobuf \
|
||||
%endif
|
||||
%if %{with ripd}
|
||||
--enable-ripd \
|
||||
%else
|
||||
--disable-ripd \
|
||||
%endif
|
||||
%if %{with ripngd}
|
||||
--enable-ripngd \
|
||||
%else
|
||||
--disable-ripngd \
|
||||
%endif
|
||||
%if %{with rpki}
|
||||
--enable-rpki \
|
||||
%else
|
||||
--disable-rpki \
|
||||
%endif
|
||||
%if %{with rtadv}
|
||||
--enable-rtadv \
|
||||
%else
|
||||
--disable-rtadv \
|
||||
%endif
|
||||
%if %{with sharpd}
|
||||
--enable-sharpd \
|
||||
%else
|
||||
--disable-sharpd \
|
||||
%endif
|
||||
%if %{with staticd}
|
||||
--enable-staticd \
|
||||
%else
|
||||
--disable-staticd \
|
||||
%endif
|
||||
%if %{with vtysh}
|
||||
--enable-vtysh \
|
||||
%else
|
||||
--disable-vtysh \
|
||||
%endif
|
||||
%if %{with watchfrr}
|
||||
--enable-watchfrr \
|
||||
%else
|
||||
--disable-watchfrr \
|
||||
%endif
|
||||
%if %{with zebra}
|
||||
--enable-zebra \
|
||||
%else
|
||||
--disable-zebra \
|
||||
%endif
|
||||
--enable-systemd
|
||||
|
||||
make %{?_smp_mflags} MAKEINFO="makeinfo --no-split"
|
||||
|
||||
%install
|
||||
make DESTDIR=%{buildroot} INSTALL="install -p" CP="cp -p" install
|
||||
find %{buildroot} -type f -name "*.la" -delete -print
|
||||
install -d %{buildroot}%{_sysconfdir}/frr
|
||||
%if %{with doc}
|
||||
install -d %{buildroot}/%{_docdir}/%{name}
|
||||
mv %{buildroot}/%{_datadir}/doc/frr/html %{buildroot}/%{_docdir}/%{name}
|
||||
%endif
|
||||
|
||||
# remove stray buildinfo files
|
||||
find %{buildroot}/%{_docdir}/%{name} -type f -name .buildinfo -delete
|
||||
|
||||
# systemd init scripts
|
||||
install -D -m 0644 tools/frr.service %{buildroot}%{_unitdir}/frr.service
|
||||
install -D -m 0644 tools%{_sysconfdir}/frr/daemons %{buildroot}%{_sysconfdir}/frr/daemons
|
||||
|
||||
# add rpki module to daemon
|
||||
%if %{with rpki}
|
||||
sed -i -e 's/^\(bgpd_options=\)\(.*\)\(".*\)/\1\2 -M rpki\3/' %{buildroot}%{_sysconfdir}/frr/daemons
|
||||
%endif
|
||||
install -D -m 0644 redhat/frr.pam %{buildroot}%{_sysconfdir}/pam.d/frr
|
||||
install -D -m 0644 redhat/frr.logrotate %{buildroot}%{_sysconfdir}/logrotate.d/frr
|
||||
install -d -m 0750 %{buildroot}%{rundir}
|
||||
install -d -m 0750 %{buildroot}%{_localstatedir}/log/frr
|
||||
install -D -m 0644 %{SOURCE1} %{buildroot}/%{_tmpfilesdir}/%{name}.conf
|
||||
sed -e "s|@frr_statedir@|%{frr_statedir}|g" -i %{buildroot}/%{_tmpfilesdir}/%{name}.conf
|
||||
install -d %{buildroot}%{_sbindir}
|
||||
ln -s %{_sbindir}/service %{buildroot}%{_sbindir}/rcfrr
|
||||
rm -f %{buildroot}%{frr_daemondir}/ssd
|
||||
cat > %{buildroot}%{_sysconfdir}/frr/frr.conf << __EOF__
|
||||
!hostname frr
|
||||
|
||||
!password frr
|
||||
!enable password frr
|
||||
|
||||
log file %{_localstatedir}/log/frr/frr.log
|
||||
__EOF__
|
||||
cat > %{buildroot}%{_sysconfdir}/frr/vtysh.conf << __EOF__
|
||||
! vtysh is using PAM authentication allowing root to use it.
|
||||
__EOF__
|
||||
|
||||
%check
|
||||
make -C tests
|
||||
|
||||
%pre
|
||||
# Create frr user/groups
|
||||
getent group %{frr_group} >/dev/null || groupadd -r %{frr_group}
|
||||
getent group %{frrvty_group} >/dev/null || groupadd -r %{frrvty_group}
|
||||
getent passwd %{frr_user} >/dev/null || useradd -r -g %{frr_group} -G %{frrvty_group} -d %{frr_home} -s /sbin/nologin -c "FRRouting suite" %{frr_user}
|
||||
exit 0
|
||||
|
||||
%service_add_pre %{name}.service
|
||||
|
||||
%post
|
||||
%service_add_post %{name}.service
|
||||
%if %{with doc}
|
||||
%install_info --info-dir=%{_infodir} %{_infodir}/%{name}.info%{ext_info}
|
||||
%endif
|
||||
%tmpfiles_create %{_tmpfilesdir}/%{name}.conf || true
|
||||
|
||||
%preun
|
||||
%service_del_preun %{name}.service
|
||||
|
||||
%postun
|
||||
%service_del_postun %{name}.service
|
||||
%if %{with doc}
|
||||
%install_info_delete --info-dir=%{_infodir} %{_infodir}/frr.info%{ext_info}
|
||||
%endif
|
||||
|
||||
# delete the user and groups created if it's an uninstall
|
||||
if [ "$1" = "0" ]; then
|
||||
userdel -r frr
|
||||
groupdel frr
|
||||
groupdel frrvty
|
||||
fi
|
||||
|
||||
|
||||
%if %{with protobuf}
|
||||
%post -n libfrr_pb0 -p /sbin/ldconfig
|
||||
%postun -n libfrr_pb0 -p /sbin/ldconfig
|
||||
%post -n libfrrfpm_pb0 -p /sbin/ldconfig
|
||||
%postun -n libfrrfpm_pb0 -p /sbin/ldconfig
|
||||
%endif
|
||||
|
||||
%if %{with ospfapi}
|
||||
%post -n libfrrospfapiclient0 -p /sbin/ldconfig
|
||||
%postun -n libfrrospfapiclient0 -p /sbin/ldconfig
|
||||
%endif
|
||||
|
||||
%if %{with snmp}
|
||||
%post -n libfrrsnmp0 -p /sbin/ldconfig
|
||||
%postun -n libfrrsnmp0 -p /sbin/ldconfig
|
||||
%endif
|
||||
|
||||
%if %{with zeromq}
|
||||
%post -n libfrrzmq0 -p /sbin/ldconfig
|
||||
%postun -n libfrrzmq0 -p /sbin/ldconfig
|
||||
%endif
|
||||
|
||||
%post -n libfrr0 -p /sbin/ldconfig
|
||||
%postun -n libfrr0 -p /sbin/ldconfig
|
||||
%post -n libfrrcares0 -p /sbin/ldconfig
|
||||
%postun -n libfrrcares0 -p /sbin/ldconfig
|
||||
|
||||
%files
|
||||
%license COPYING COPYING-LGPLv2.1
|
||||
%doc README.md
|
||||
%doc doc/mpls
|
||||
%doc %{_docdir}/%{name}/examples
|
||||
%dir %attr(750,%{frr_user},%{frr_user}) %{_sysconfdir}/%{name}
|
||||
%config(noreplace) %attr(640,%{frr_user},%{frr_group}) %{_sysconfdir}/%{name}/[!v]*.conf*
|
||||
%config(noreplace) %attr(640,%{frr_user},%{frrvty_group}) %{_sysconfdir}/%{name}/vtysh.conf
|
||||
%config(noreplace) %%attr(640,%{frr_user},%{frr_group}) %{_sysconfdir}/%{name}/daemons
|
||||
%config(noreplace) %{_sysconfdir}/pam.d/frr
|
||||
%config(noreplace) %{_sysconfdir}/logrotate.d/frr
|
||||
%if %{with doc}
|
||||
%{_infodir}/frr.info%{?ext_info}
|
||||
%{_mandir}/man?/*
|
||||
%{_docdir}/%{name}/html
|
||||
%endif
|
||||
%{_unitdir}/%%{name}.service
|
||||
%dir %{_tmpfilesdir}
|
||||
%{_tmpfilesdir}/%{name}.conf
|
||||
%dir %attr(-,%{frr_user},%{frr_group}) %{_localstatedir}/log/frr
|
||||
%dir %attr(-,%{frr_user},%{frr_group}) %ghost %{frr_statedir}
|
||||
%{_sbindir}/rc%{name}
|
||||
%dir %{_prefix}/lib/frr
|
||||
%{_prefix}/lib/frr/fabricd
|
||||
%{_prefix}/lib/frr/vrrpd
|
||||
%{_datadir}/yang
|
||||
%if %{with pimd}
|
||||
%{_bindir}/mtracebis
|
||||
%endif
|
||||
%if %{with vtysh}
|
||||
%{_bindir}/vtysh
|
||||
%endif
|
||||
%if %{with babeld}
|
||||
%{frr_daemondir}/babeld
|
||||
%endif
|
||||
%if %{with bfdd}
|
||||
%{frr_daemondir}/bfdd
|
||||
%endif
|
||||
%if %{with bgpd}
|
||||
%{frr_daemondir}/bgpd
|
||||
%endif
|
||||
%if %{with eigrpd}
|
||||
%{frr_daemondir}/eigrpd
|
||||
%endif
|
||||
%{frr_daemondir}/frr
|
||||
%{frr_daemondir}/frr-reload
|
||||
%{frr_daemondir}/frr-reload.py
|
||||
%{frr_daemondir}/frrcommon.sh
|
||||
%{frr_daemondir}/frrinit.sh
|
||||
%if %{with isisd}
|
||||
%{frr_daemondir}/isisd
|
||||
%endif
|
||||
%if %{with ldpd}
|
||||
%{frr_daemondir}/ldpd
|
||||
%endif
|
||||
%if %{with nhrpd}
|
||||
%{frr_daemondir}/nhrpd
|
||||
%endif
|
||||
%if %{with ospf6d}
|
||||
%{frr_daemondir}/ospf6d
|
||||
%endif
|
||||
%if %{with ospfd}
|
||||
%{frr_daemondir}/ospfd
|
||||
%endif
|
||||
%if %{with pbrd}
|
||||
%{frr_daemondir}/pbrd
|
||||
%endif
|
||||
%if %{with pimd}
|
||||
%{frr_daemondir}/pimd
|
||||
%endif
|
||||
%if %{with ripd}
|
||||
%{frr_daemondir}/ripd
|
||||
%endif
|
||||
%if %{with ripngd}
|
||||
%{frr_daemondir}/ripngd
|
||||
%endif
|
||||
%if %{with sharpd}
|
||||
%{frr_daemondir}/sharpd
|
||||
%endif
|
||||
%if %{with staticd}
|
||||
%{frr_daemondir}/staticd
|
||||
%endif
|
||||
%if %{with watchfrr}
|
||||
%{frr_daemondir}/watchfrr
|
||||
%{frr_daemondir}/watchfrr.sh
|
||||
%endif
|
||||
%if %{with zebra}
|
||||
%{frr_daemondir}/zebra
|
||||
%endif
|
||||
%dir %{_libdir}/frr
|
||||
%dir %{_libdir}/frr/modules
|
||||
%if %{with zebra} && %{with fpm}
|
||||
%{_libdir}/frr/modules/zebra_fpm.so
|
||||
%endif
|
||||
%if %{with zebra} && %{with irdp}
|
||||
%{_libdir}/frr/modules/zebra_irdp.so
|
||||
%endif
|
||||
%if %{with bgpd} && %{with rpki}
|
||||
%{_libdir}/frr/modules/bgpd_rpki.so
|
||||
%endif
|
||||
%{_prefix}/lib/frr/vrrpd
|
||||
%{_libdir}/frr/modules/bgpd_bmp.so
|
||||
|
||||
%if %{with protobuf}
|
||||
%files -n libfrr_pb0
|
||||
%{_libdir}/libfrr_pb.so.0*
|
||||
|
||||
%files -n libfrrfpm_pb0
|
||||
%{_libdir}/libfrrfpm_pb.so.0*
|
||||
%endif
|
||||
|
||||
%if %{with ospfapi}
|
||||
%files -n libfrrospfapiclient0
|
||||
%{_libdir}/libfrrospfapiclient.so.0*
|
||||
%endif
|
||||
|
||||
%if %{with snmp}
|
||||
%files -n libfrrsnmp0
|
||||
%{_libdir}/libfrrsnmp.so.0*
|
||||
%{_libdir}/frr/modules/*_snmp.so
|
||||
%endif
|
||||
|
||||
%if %{with zeromq}
|
||||
%files -n libfrrzmq0
|
||||
%{_libdir}/libfrrzmq.so.0*
|
||||
%endif
|
||||
|
||||
%files -n libfrr0
|
||||
%{_libdir}/libfrr.so.0*
|
||||
|
||||
%files -n libfrrcares0
|
||||
%{_libdir}/libfrrcares.so.0
|
||||
%{_libdir}/libfrrcares.so.0.0.0
|
||||
|
||||
%files devel
|
||||
%dir %{_includedir}/%{name}
|
||||
%{_includedir}/%{name}/*.h
|
||||
%if %{with ospfd}
|
||||
%dir %{_includedir}/%{name}/ospfd
|
||||
%{_includedir}/%{name}/ospfd/*.h
|
||||
%endif
|
||||
%if %{with ospfapi}
|
||||
%dir %{_includedir}/%{name}/ospfapi
|
||||
%{_includedir}/%{name}/ospfapi/*.h
|
||||
%endif
|
||||
%if %{with eigrpd}
|
||||
%dir %{_includedir}/%{name}/eigrpd
|
||||
%{_includedir}/%{name}/eigrpd/*.h
|
||||
%endif
|
||||
%{_libdir}/lib*.so
|
||||
|
||||
%changelog
|
Loading…
Reference in New Issue
Block a user