214 lines
5.7 KiB
RPMSpec
214 lines
5.7 KiB
RPMSpec
Name: fence-virt
|
|
Version: 0.4.0
|
|
Release: 11
|
|
Summary: A pluggable fencing framework for virtual machines
|
|
Group: System Environment/Base
|
|
License: GPLv2+
|
|
|
|
ExclusiveArch: x86_64 aarch64
|
|
|
|
URL: http://fence-virt.sourceforge.net
|
|
Source0: https://github.com/ClusterLabs/fence-virt/archive/v%{version}.tar.gz
|
|
Patch0: bz1624110-1-harden-fPIE.patch
|
|
Patch1: bz1624110-2-fence_virt-fix-coredump.patch
|
|
Patch2: bz1668357-fence_virt-dont-report-success-incorrect-parameter.patch
|
|
Patch3: bz1766993-fence_virtd-1-fix-segfault-no-domains.patch
|
|
Patch4: bz1766993-fence_virtd-2-return-mainloop-on-interrupt.patch
|
|
Patch5: Fix-fence_virtd.service-stop-failed.patch
|
|
|
|
BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
|
|
|
|
BuildRequires: corosynclib-devel libvirt-devel
|
|
BuildRequires: automake autoconf libxml2-devel nss-devel nspr-devel
|
|
BuildRequires: flex bison libuuid-devel
|
|
BuildRequires: gcc-c++ make
|
|
|
|
BuildRequires: systemd-units
|
|
Requires(post): systemd-sysv systemd-units
|
|
Requires(preun): systemd-units
|
|
Requires(postun): systemd-units
|
|
|
|
Conflicts: fence-agents < 3.0.5-2
|
|
|
|
|
|
%description
|
|
Fencing agent for virtual machines.
|
|
|
|
|
|
%package -n fence-virtd
|
|
Summary: Daemon which handles requests from fence-virt
|
|
Group: System Environment/Base
|
|
|
|
%description -n fence-virtd
|
|
This package provides the host server framework, fence_virtd,
|
|
for fence_virt. The fence_virtd host daemon is resposible for
|
|
processing fencing requests from virtual machines and routing
|
|
the requests to the appropriate physical machine for action.
|
|
|
|
|
|
%package -n fence-virtd-multicast
|
|
Summary: Multicast listener for fence-virtd
|
|
Group: System Environment/Base
|
|
Requires: fence-virtd
|
|
|
|
%description -n fence-virtd-multicast
|
|
Provides multicast listener capability for fence-virtd.
|
|
|
|
|
|
%package -n fence-virtd-serial
|
|
Summary: Serial VMChannel listener for fence-virtd
|
|
Group: System Environment/Base
|
|
Requires: libvirt >= 0.6.2
|
|
Requires: fence-virtd
|
|
|
|
%description -n fence-virtd-serial
|
|
Provides serial VMChannel listener capability for fence-virtd.
|
|
|
|
%package -n fence-virtd-tcp
|
|
Summary: TCP listener for fence-virtd
|
|
Group: System Environment/Base
|
|
Requires: fence-virtd
|
|
|
|
%description -n fence-virtd-tcp
|
|
Provides TCP listener capability for fence-virtd.
|
|
|
|
|
|
%package -n fence-virtd-libvirt
|
|
Summary: Libvirt backend for fence-virtd
|
|
Group: System Environment/Base
|
|
Requires: libvirt >= 0.6.0
|
|
Requires: fence-virtd
|
|
|
|
%description -n fence-virtd-libvirt
|
|
Provides fence_virtd with a connection to libvirt to fence
|
|
virtual machines. Useful for running a cluster of virtual
|
|
machines on a desktop.
|
|
|
|
|
|
%package -n fence-virtd-cpg
|
|
Summary: CPG/libvirt backend for fence-virtd
|
|
Group: System Environment/Base
|
|
Requires: corosynclib
|
|
Requires: fence-virtd
|
|
|
|
%description -n fence-virtd-cpg
|
|
Provides fence_virtd with a connection to libvirt to fence
|
|
virtual machines. Uses corosync CPG to keep track of VM
|
|
locations to allow for non-local VMs to be fenced when VMs
|
|
are located on corosync cluster nodes.
|
|
|
|
|
|
%prep
|
|
%setup -q
|
|
%patch0 -p1
|
|
%patch1 -p1
|
|
%patch2 -p1 -F1
|
|
%patch3 -p1
|
|
%patch4 -p1
|
|
%patch5 -p1
|
|
|
|
%build
|
|
./autogen.sh
|
|
%{configure} --disable-libvirt-qmf-plugin --enable-cpg-plugin
|
|
make %{?_smp_mflags}
|
|
|
|
|
|
%install
|
|
rm -rf %{buildroot}
|
|
make install DESTDIR=%{buildroot}
|
|
|
|
# Systemd unit file
|
|
mkdir -p %{buildroot}/%{_unitdir}/
|
|
install -m 0644 fence_virtd.service %{buildroot}/%{_unitdir}/
|
|
|
|
%clean
|
|
rm -rf %{buildroot}
|
|
|
|
|
|
%files
|
|
%defattr(-,root,root,-)
|
|
%doc COPYING TODO README
|
|
%{_sbindir}/fence_virt
|
|
%{_sbindir}/fence_xvm
|
|
%{_mandir}/man8/fence_virt.*
|
|
%{_mandir}/man8/fence_xvm.*
|
|
|
|
|
|
%post
|
|
ccs_update_schema > /dev/null 2>&1 ||:
|
|
# https://fedoraproject.org/wiki/Packaging:ScriptletSnippets#Systemd
|
|
if [ $1 -eq 1 ] ; then
|
|
# Initial installation
|
|
/bin/systemctl daemon-reload >/dev/null 2>&1 || :
|
|
fi
|
|
|
|
%preun
|
|
# https://fedoraproject.org/wiki/Packaging:ScriptletSnippets#Systemd
|
|
if [ $1 -eq 0 ] ; then
|
|
# Package removal, not upgrade
|
|
/bin/systemctl --no-reload disable fence_virtd.service &> /dev/null || :
|
|
/bin/systemctl stop fence_virtd.service &> /dev/null || :
|
|
fi
|
|
|
|
%postun
|
|
# https://fedoraproject.org/wiki/Packaging:ScriptletSnippets#Systemd
|
|
/bin/systemctl daemon-reload &> /dev/null || :
|
|
if [ $1 -ge 1 ] ; then
|
|
# Package upgrade, not uninstall
|
|
/bin/systemctl try-restart fence_virtd.service &> /dev/null || :
|
|
fi
|
|
|
|
|
|
%triggerun -- fence_virtd < 0.3.0-1
|
|
# https://fedoraproject.org/wiki/Packaging:ScriptletSnippets#Packages_migrating_to_a_systemd_unit_file_from_a_SysV_initscript
|
|
/usr/bin/systemd-sysv-convert --save fence_virtd &> /dev/null || :
|
|
/sbin/chkconfig --del fence_virtd &> /dev/null || :
|
|
/bin/systemctl daemon-reload >/dev/null 2>&1 || :
|
|
/bin/systemctl try-restart fence_virtd.service &> /dev/null || :
|
|
|
|
|
|
%files -n fence-virtd
|
|
%defattr(-,root,root,-)
|
|
%{_sbindir}/fence_virtd
|
|
%{_unitdir}/fence_virtd.service
|
|
%config(noreplace) %{_sysconfdir}/fence_virt.conf
|
|
%dir %{_libdir}/%{name}
|
|
%{_mandir}/man5/fence_virt.conf.*
|
|
%{_mandir}/man8/fence_virtd.*
|
|
|
|
%files -n fence-virtd-multicast
|
|
%defattr(-,root,root,-)
|
|
%{_libdir}/%{name}/multicast.so
|
|
|
|
%files -n fence-virtd-serial
|
|
%defattr(-,root,root,-)
|
|
%{_libdir}/%{name}/serial.so
|
|
|
|
%files -n fence-virtd-tcp
|
|
%defattr(-,root,root,-)
|
|
%{_libdir}/%{name}/tcp.so
|
|
|
|
%files -n fence-virtd-libvirt
|
|
%defattr(-,root,root,-)
|
|
%{_libdir}/%{name}/libvirt.so
|
|
|
|
%files -n fence-virtd-cpg
|
|
%defattr(-,root,root,-)
|
|
%{_libdir}/%{name}/cpg.so
|
|
|
|
%changelog
|
|
* Wed Aug 24 2022 jiangxinyu <jiangxinyu@kylinos.cn> - 0.4.0-11
|
|
- Add Fix-fence_virtd.service-stop-failed.patch
|
|
|
|
* Mon Feb 28 2022 jiangxinyu <jiangxinyu@kylinos.cn> - 0.4.0-10
|
|
- Fix fence_virtd.service stop failed
|
|
|
|
* Sat Feb 12 2022 jiangxinyu <jiangxinyu@kylinos.cn> - 0.4.0-9
|
|
- Add BuildRequires: gcc-c++ solves build error
|
|
|
|
* Fri Oct 30 2020 jiangxinyu <jiangxinyu@kylinos.cn> - 0.4.0-8
|
|
- add ExclusiveArch: aarch64
|
|
|
|
* Fri Apr 17 2020 houjian<jian.hou@kylinos.cn> - 0.4.0-7
|
|
- Init fence-virt project
|