Name: python-exabgp Version: 4.2.21 Release: 3%{?dist} Summary: The BGP swiss army knife of networking (Library) License: BSD-3-Clause URL: https://github.com/Exa-Networks/exabgp Source0: https://github.com/Exa-Networks/exabgp/archive/%{name}-%{version}.tar.gz Source1: exabgp.sysusers.exabgp.conf Source2: exabgp.tmpfiles.exabgp.conf Source3: exabgp.systemd.exabgp.service Source4: exabgp.systemd.exabgp@.service BuildArch: noarch %description ExaBGP python module %package -n python3-exabgp Summary: The BGP swiss army knife of networking BuildRequires: python3-devel Requires: python3 >= 3.7 Obsoletes: python2-exabgp <= %{version} %{?python_provide:%python_provide python3-exabgp} %description -n python3-exabgp The BGP swiss army knife of networking %package -n exabgp Summary: The BGP swiss army knife of networking BuildRequires: systemd-rpm-macros Requires: systemd Requires: python3-exabgp = %{version}-%{release} %description -n exabgp The BGP swiss army knife of networking (exabgp systemd unit) %prep %autosetup -p1 -n exabgp-%{version} %generate_buildrequires %pyproject_buildrequires -t %build %pyproject_wheel %install %pyproject_install %pyproject_save_files exabgp # project installs binaries in /usr/bin but systemd unit expects it to be in /usr/sbin mkdir -p %{buildroot}%{_sbindir} mv %{buildroot}%{_bindir}/exabgp %{buildroot}%{_sbindir}/ # Install health check with non-generic name install -p -m 0755 bin/healthcheck %{buildroot}%{_sbindir}/exabgp-healthcheck # Install exabgpcli install -p -m 0755 bin/exabgpcli %{buildroot}%{_bindir}/ # Configure required directories for the exabgp service mkdir -p %{buildroot}/%{_sysconfdir}/exabgp touch %{buildroot}/%{_sysconfdir}/exabgp/exabgp.env # Install exabgp systemd unit files mkdir -p %{buildroot}/%{_unitdir} install -p -m 0644 %{SOURCE3} %{buildroot}/%{_unitdir}/exabgp.service install -p -m 0644 %{SOURCE4} %{buildroot}/%{_unitdir}/exabgp@.service # Install man pages mkdir -p %{buildroot}/%{_mandir}/man1 install -p -m 0644 doc/man/exabgp.1 %{buildroot}/%{_mandir}/man1/ mkdir -p %{buildroot}/%{_mandir}/man5 install -p -m 0644 doc/man/exabgp.conf.5 %{buildroot}/%{_mandir}/man5/ # Install sysusers.d files mkdir -p %{buildroot}%{_sysusersdir} install -p -m 0644 %{SOURCE1} %{buildroot}%{_sysusersdir}/exabgp.conf # Install tmpfiles.d files mkdir -p %{buildroot}%{_tmpfilesdir} install -p -m 0644 %{SOURCE2} %{buildroot}%{_tmpfilesdir}/exabgp.conf # Remove examples rm -rf %{buildroot}%{_usr}/etc %check %tox %pre -n exabgp %sysusers_create_package exabgp %{SOURCE1} %tmpfiles_create_package exabgp %{SOURCE2} %post -n exabgp %systemd_post exabgp.service # Default env [ -f %{_sysconfdir}/exabgp/exabgp.env ] || %{_sbindir}/exabgp --full-ini > %{_sysconfdir}/exabgp/exabgp.env %preun -n exabgp %systemd_preun exabgp.service %postun -n exabgp %systemd_postun_with_restart exabgp.service %files -n python3-exabgp -f %{pyproject_files} %doc README.md %license LICENCE.txt %files -n exabgp %{_bindir}/exabgp-healthcheck %{_bindir}/exabgpcli %{_bindir}/exabgp-cli %{_sbindir}/exabgp %{_sbindir}/exabgp-healthcheck %dir %{_sysconfdir}/exabgp %ghost %{_sysconfdir}/exabgp/exabgp.env %{_unitdir}/exabgp.service %{_unitdir}/exabgp@.service %{_mandir}/man1/exabgp.1{,.*} %{_mandir}/man5/exabgp.conf.5{,.*} %{_sysusersdir}/exabgp.conf %{_tmpfilesdir}/exabgp.conf %changelog * Fri Jan 20 2023 Fedora Release Engineering - 4.2.21-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild * Wed Dec 28 2022 Gary Buhrmaster - 4.2.21-2 - Create run time tmpfiles in pre - Set file/directory permissions appropriately - Mark exabgp.env as a ghost file * Sat Dec 24 2022 Gary Buhrmaster - 4.2.21-1 - Update to upstream 4.2.21 (resolves rhbz#1721067) - Update license to SPDX format - spec file tidy/modernization - derive from current upstream - use modern python build macros - de-glob some files to follow current packaging guidelines * Sat Dec 24 2022 Gary Buhrmaster - 4.0.10-15 - Rebuild after PR#5 for pathfix.py location changes (resolves: rhbz#2155194) * Fri Jul 22 2022 Fedora Release Engineering - 4.0.10-14 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild * Mon Jun 13 2022 Python Maint - 4.0.10-13 - Rebuilt for Python 3.11 * Fri Jan 21 2022 Fedora Release Engineering - 4.0.10-12 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild * Fri Jul 23 2021 Fedora Release Engineering - 4.0.10-11 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild * Fri Jun 04 2021 Python Maint - 4.0.10-10 - Rebuilt for Python 3.10 * Tue Mar 02 2021 Zbigniew Jędrzejewski-Szmek - 4.0.10-9 - Rebuilt for updated systemd-rpm-macros See https://pagure.io/fesco/issue/2583. * Wed Jan 27 2021 Fedora Release Engineering - 4.0.10-8 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild * Wed Jul 29 2020 Fedora Release Engineering - 4.0.10-7 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild * Tue May 26 2020 Miro Hrončok - 4.0.10-6 - Rebuilt for Python 3.9 * Thu Jan 30 2020 Fedora Release Engineering - 4.0.10-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild * Mon Aug 19 2019 Miro Hrončok - 4.0.10-4 - Rebuilt for Python 3.8 * Fri Jul 26 2019 Fedora Release Engineering - 4.0.10-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild * Sat Feb 02 2019 Fedora Release Engineering - 4.0.10-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild * Fri Dec 28 2018 Miro Hrončok - 4.0.10-1 - Update to 4.0.10, Python 3 only * Sat Jul 14 2018 Fedora Release Engineering - 4.0.5-7 - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild * Tue Jun 19 2018 Miro Hrončok - 4.0.5-6 - Rebuilt for Python 3.7 * Fri Feb 09 2018 Fedora Release Engineering - 4.0.5-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild * Wed Jan 31 2018 Luke Hinds - 4.0.5 - 4.0.5 release * Tue Jan 16 2018 Iryna Shcherbina - 4.0.1-4 - Update Python 2 dependency declarations to new packaging standards (See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3) * Thu Jul 27 2017 Fedora Release Engineering - 4.0.1-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild * Fri Jul 10 2017 Luke Hinds - 4.0.1-2 - Fixed dependency issues * Fri Jul 07 2017 Luke Hinds - 4.0.1 - 4.0.1 release, and python 3 support * Fri May 19 2017 Luke Hinds - 4.0.0 - Initial release