mirror of
https://git.proxmox.com/git/mirror_frr
synced 2025-08-04 18:25:00 +00:00
redhat: Changes to allow Cumulus start/stop methodology
Change the redhat .spec and control files to allow redhat systemd interaction to be the same as the debian style. This will allow users to use Quagga consistently across platforms. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com> Conflicts: redhat/Makefile.am
This commit is contained in:
parent
fb8211bbae
commit
48eefa6816
@ -1,7 +1,7 @@
|
||||
|
||||
EXTRA_DIST = bgpd.init bgpd.service isisd.init \
|
||||
isisd.service ospf6d.init ospf6d.service ospfd.init ospfd.service \
|
||||
EXTRA_DIST = bgpd.init isisd.init \
|
||||
ospf6d.init ospfd.init \
|
||||
quagga.logrotate quagga.pam quagga.spec \
|
||||
quagga.sysconfig ripd.init ripd.service ripngd.init ripngd.service \
|
||||
watchquagga.init zebra.init zebra.service \
|
||||
quagga.sysconfig ripd.init ripngd.init \
|
||||
watchquagga.init zebra.init \
|
||||
README.rpm_build.md
|
||||
|
@ -1,14 +0,0 @@
|
||||
[Unit]
|
||||
Description=BGP routing daemon
|
||||
BindTo=zebra.service
|
||||
After=syslog.target network.target zebra.service
|
||||
ConditionPathExists=/etc/quagga/bgpd.conf
|
||||
|
||||
[Service]
|
||||
Type=forking
|
||||
EnvironmentFile=/etc/sysconfig/quagga
|
||||
ExecStart=/usr/sbin/bgpd -d $BGPD_OPTS -f /etc/quagga/bgpd.conf
|
||||
Restart=on-abort
|
||||
|
||||
[Install]
|
||||
WantedBy=network.target
|
@ -1,14 +0,0 @@
|
||||
[Unit]
|
||||
Description=IS-IS routing daemon
|
||||
BindTo=zebra.service
|
||||
After=syslog.target network.target zebra.service
|
||||
ConditionPathExists=/etc/quagga/isisd.conf
|
||||
|
||||
[Service]
|
||||
Type=forking
|
||||
EnvironmentFile=/etc/sysconfig/quagga
|
||||
ExecStart=/usr/sbin/isisd -d $ISISD_OPTS -f /etc/quagga/isisd.conf
|
||||
Restart=on-abort
|
||||
|
||||
[Install]
|
||||
WantedBy=network.target
|
@ -1,14 +0,0 @@
|
||||
[Unit]
|
||||
Description=OSPF routing daemon for IPv6
|
||||
BindTo=zebra.service
|
||||
After=syslog.target network.target zebra.service
|
||||
ConditionPathExists=/etc/quagga/ospf6d.conf
|
||||
|
||||
[Service]
|
||||
Type=forking
|
||||
EnvironmentFile=/etc/sysconfig/quagga
|
||||
ExecStart=/usr/sbin/ospf6d -d $OSPF6D_OPTS -f /etc/quagga/ospf6d.conf
|
||||
Restart=on-abort
|
||||
|
||||
[Install]
|
||||
WantedBy=network.target
|
@ -1,14 +0,0 @@
|
||||
[Unit]
|
||||
Description=OSPF routing daemon
|
||||
BindTo=zebra.service
|
||||
After=syslog.target network.target zebra.service
|
||||
ConditionPathExists=/etc/quagga/ospfd.conf
|
||||
|
||||
[Service]
|
||||
Type=forking
|
||||
EnvironmentFile=/etc/sysconfig/quagga
|
||||
ExecStart=/usr/sbin/ospfd -d $OSPFD_OPTS -f /etc/quagga/ospfd.conf
|
||||
Restart=on-abort
|
||||
|
||||
[Install]
|
||||
WantedBy=network.target
|
@ -11,13 +11,13 @@
|
||||
####################### Quagga configure options #########################
|
||||
# with-feature options
|
||||
%{!?with_tcp_zebra: %global with_tcp_zebra 0 }
|
||||
%{!?with_pam: %global with_pam 1 }
|
||||
%{!?with_pam: %global with_pam 0 }
|
||||
%{!?with_ospfclient: %global with_ospfclient 1 }
|
||||
%{!?with_ospfapi: %global with_ospfapi 1 }
|
||||
%{!?with_irdp: %global with_irdp 1 }
|
||||
%{!?with_rtadv: %global with_rtadv 1 }
|
||||
%{!?with_shared: %global with_shared 1 }
|
||||
%{!?with_multipath: %global with_multipath 64 }
|
||||
%{!?with_multipath: %global with_multipath 256 }
|
||||
%{!?quagga_user: %global quagga_user quagga }
|
||||
%{!?vty_group: %global vty_group quaggavty }
|
||||
%{!?with_fpm: %global with_fpm 0 }
|
||||
@ -25,9 +25,12 @@
|
||||
|
||||
# path defines
|
||||
%define _sysconfdir /etc/quagga
|
||||
%define _sbindir /usr/lib/quagga
|
||||
%define zeb_src %{_builddir}/%{name}-%{quaggaversion}
|
||||
%define zeb_rh_src %{zeb_src}/redhat
|
||||
%define zeb_docs %{zeb_src}/doc
|
||||
%define quagga_tools %{zeb_src}/tools
|
||||
%define cumulus_dir %{zeb_src}/cumulus/etc
|
||||
|
||||
# defines for configure
|
||||
%define _localstatedir /var/run/quagga
|
||||
@ -52,7 +55,7 @@
|
||||
# Note: For systems with systemd, watchquagga will NOT be built. Systemd
|
||||
# takes over the role of restarting crashed processes. Value will
|
||||
# be overwritten with 0 below for systemd independent on the setting here
|
||||
%global with_watchquagga 0
|
||||
%global with_watchquagga 1
|
||||
%endif
|
||||
|
||||
# if FPM is enabled, then enable tcp_zebra as well
|
||||
@ -62,9 +65,9 @@
|
||||
%endif
|
||||
|
||||
# misc internal defines
|
||||
%{!?quagga_uid: %define quagga_uid 92 }
|
||||
%{!?quagga_gid: %define quagga_gid 92 }
|
||||
%{!?vty_gid: %define vty_gid 85 }
|
||||
%{!?quagga_uid: %global quagga_uid 92 }
|
||||
%{!?quagga_gid: %global quagga_gid 92 }
|
||||
%{!?vty_gid: %global vty_gid 85 }
|
||||
|
||||
%define daemon_list zebra ripd ospfd bgpd isisd ripngd ospfd6d
|
||||
|
||||
@ -80,7 +83,7 @@
|
||||
%{!?keep_build: %global keep_build 0 }
|
||||
|
||||
#release sub-revision (the two digits after the CONFDATE)
|
||||
%{!?release_rev: %define release_rev 01 }
|
||||
%{!?release_rev: %global release_rev 01 }
|
||||
|
||||
Summary: Routing daemon
|
||||
Name: quagga
|
||||
@ -159,6 +162,7 @@ developing OSPF-API and quagga applications.
|
||||
#CFLAGS="${CFLAGS} -Wpacked -Wpadded"
|
||||
|
||||
%configure \
|
||||
--sbindir=%{_sbindir} \
|
||||
--sysconfdir=%{_sysconfdir} \
|
||||
--libdir=%{_libdir} \
|
||||
--libexecdir=%{_libexecdir} \
|
||||
@ -214,14 +218,10 @@ developing OSPF-API and quagga applications.
|
||||
%else
|
||||
--disable-watchquagga \
|
||||
%endif
|
||||
<<<<<<< HEAD
|
||||
--enable-gcc-rdynamic
|
||||
=======
|
||||
--enable-gcc-rdynamic \
|
||||
--enable-isisd=yes \
|
||||
--enable-systemd=yes \
|
||||
--enable-poll=yes
|
||||
>>>>>>> 5713748... rebase me
|
||||
|
||||
make %{?_smp_mflags} MAKEINFO="makeinfo --no-split"
|
||||
|
||||
@ -234,22 +234,19 @@ texi2html --number-footnotes --number-sections quagga.texi
|
||||
popd
|
||||
|
||||
%install
|
||||
mkdir -p %{buildroot}/etc/{quagga,sysconfig,logrotate.d,pam.d} \
|
||||
mkdir -p %{buildroot}/etc/{quagga,sysconfig,logrotate.d,pam.d,default} \
|
||||
%{buildroot}/var/log/quagga %{buildroot}%{_infodir}
|
||||
make DESTDIR=%{buildroot} INSTALL="install -p" CP="cp -p" install
|
||||
|
||||
# Remove this file, as it is uninstalled and causes errors when building on RH9
|
||||
rm -rf %{buildroot}/usr/share/info/dir
|
||||
|
||||
|
||||
# install /etc sources
|
||||
%if "%{initsystem}" == "systemd"
|
||||
mkdir -p %{buildroot}%{_unitdir}
|
||||
for daemon in %{all_daemons} ; do
|
||||
if [ x"${daemon}" != x"" ] ; then
|
||||
install %{zeb_rh_src}/${daemon}.service \
|
||||
%{buildroot}%{_unitdir}/${daemon}.service
|
||||
fi
|
||||
done
|
||||
install %{quagga_tools}/quagga.service \
|
||||
%{buildroot}%{_unitdir}/quagga.service
|
||||
%else
|
||||
mkdir -p %{buildroot}/etc/rc.d/init.d
|
||||
for daemon in %{all_daemons} ; do
|
||||
@ -260,12 +257,13 @@ for daemon in %{all_daemons} ; do
|
||||
done
|
||||
%endif
|
||||
|
||||
install %{cumulus_dir}/quagga/debian.conf %{buildroot}/etc/quagga
|
||||
install %{cumulus_dir}/quagga/daemons %{buildroot}/etc/quagga
|
||||
install -m644 %{cumulus_dir}/default/quagga %{buildroot}/etc/default
|
||||
install -m644 %{zeb_rh_src}/quagga.pam \
|
||||
%{buildroot}/etc/pam.d/quagga
|
||||
install -m644 %{zeb_rh_src}/quagga.logrotate \
|
||||
%{buildroot}/etc/logrotate.d/quagga
|
||||
install -m644 %{zeb_rh_src}/quagga.sysconfig \
|
||||
%{buildroot}/etc/sysconfig/quagga
|
||||
install -d -m750 %{buildroot}/var/run/quagga
|
||||
|
||||
%pre
|
||||
@ -315,7 +313,7 @@ zebra_spec_add_service isisd 2608/tcp "ISISd vty"
|
||||
|
||||
%if "%{initsystem}" == "systemd"
|
||||
for daemon in %all_daemons ; do
|
||||
%systemd_post ${daemon}.service
|
||||
%systemd_post quagga.service
|
||||
done
|
||||
%else
|
||||
for daemon in %all_daemons ; do
|
||||
@ -478,6 +476,11 @@ rm -rf %{buildroot}
|
||||
%{_sbindir}/ospfd
|
||||
%{_sbindir}/ripd
|
||||
%{_sbindir}/bgpd
|
||||
%{_sbindir}/ssd
|
||||
%{_sbindir}/quagga
|
||||
%{_sbindir}/quagga-reload.py
|
||||
%{_sbindir}/quagga-reload.pyc
|
||||
%{_sbindir}/quagga-reload.pyo
|
||||
%if %{with_watchquagga}
|
||||
%{_sbindir}/watchquagga
|
||||
%endif
|
||||
@ -491,7 +494,7 @@ rm -rf %{buildroot}
|
||||
%{_bindir}/*
|
||||
%config /etc/quagga/[!v]*
|
||||
%if "%{initsystem}" == "systemd"
|
||||
%config %{_unitdir}/*.service
|
||||
%config %{_unitdir}/quagga.service
|
||||
%else
|
||||
%config /etc/rc.d/init.d/zebra
|
||||
%if %{with_watchquagga}
|
||||
@ -505,7 +508,7 @@ rm -rf %{buildroot}
|
||||
%config /etc/rc.d/init.d/isisd
|
||||
%config /etc/rc.d/init.d/pimd
|
||||
%endif
|
||||
%config(noreplace) /etc/sysconfig/quagga
|
||||
%config(noreplace) /etc/default/quagga
|
||||
%config(noreplace) /etc/pam.d/quagga
|
||||
%config(noreplace) %attr(640,root,root) /etc/logrotate.d/*
|
||||
|
||||
|
@ -1,14 +0,0 @@
|
||||
[Unit]
|
||||
Description=RIP routing daemon
|
||||
BindTo=zebra.service
|
||||
After=syslog.target network.target zebra.service
|
||||
ConditionPathExists=/etc/quagga/ripd.conf
|
||||
|
||||
[Service]
|
||||
Type=forking
|
||||
EnvironmentFile=/etc/sysconfig/quagga
|
||||
ExecStart=/usr/sbin/ripd -d $RIPD_OPTS -f /etc/quagga/ripd.conf
|
||||
Restart=on-abort
|
||||
|
||||
[Install]
|
||||
WantedBy=network.target
|
@ -1,14 +0,0 @@
|
||||
[Unit]
|
||||
Description=RIP routing daemon for IPv6
|
||||
BindTo=zebra.service
|
||||
After=syslog.target network.target zebra.service
|
||||
ConditionPathExists=/etc/quagga/ripngd.conf
|
||||
|
||||
[Service]
|
||||
Type=forking
|
||||
EnvironmentFile=/etc/sysconfig/quagga
|
||||
ExecStart=/usr/sbin/ripngd -d $RIPNGD_OPTS -f /etc/quagga/ripngd.conf
|
||||
Restart=on-abort
|
||||
|
||||
[Install]
|
||||
WantedBy=network.target
|
@ -1,14 +0,0 @@
|
||||
[Unit]
|
||||
Description=GNU Zebra routing manager
|
||||
After=syslog.target network.target
|
||||
ConditionPathExists=/etc/quagga/zebra.conf
|
||||
|
||||
[Service]
|
||||
Type=forking
|
||||
EnvironmentFile=-/etc/sysconfig/quagga
|
||||
ExecStartPre=/sbin/ip route flush proto zebra
|
||||
ExecStart=/usr/sbin/zebra -d $ZEBRA_OPTS -f /etc/quagga/zebra.conf
|
||||
Restart=on-abort
|
||||
|
||||
[Install]
|
||||
WantedBy=network.target
|
Loading…
Reference in New Issue
Block a user