fb4d75
#
fb4d75
# spec file for package sbd
fb4d75
#
fb4d75
# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany.
fb4d75
# Copyright (c) 2013 Lars Marowsky-Bree
fb4d75
#
fb4d75
# All modifications and additions to the file contributed by third parties
fb4d75
# remain the property of their copyright owners, unless otherwise agreed
fb4d75
# upon. The license for this file, and modifications and additions to the
fb4d75
# file, is the same license as for the pristine package itself (unless the
fb4d75
# license for the pristine package is not an Open Source License, in which
fb4d75
# case the license is the MIT License). An "Open Source License" is a
fb4d75
# license that conforms to the Open Source Definition (Version 1.9)
fb4d75
# published by the Open Source Initiative.
fb4d75
fb4d75
# Please submit bugfixes or comments via http://bugs.opensuse.org/
fb4d75
#
fb4d75
%global longcommit 6bb085f5704dd4c3841c79504f2aed2228e6d76a
fb4d75
%global shortcommit %(echo %{longcommit}|cut -c1-8)
fb4d75
%global modified %(echo %{longcommit}-|cut -f2 -d-)
fb4d75
%global github_owner Clusterlabs
4c9e01
%global buildnum 3
fb4d75
fb4d75
%ifarch s390x s390
fb4d75
# minimum timeout on LPAR diag288 watchdog is 15s
fb4d75
%global watchdog_timeout_default 15
fb4d75
%else
fb4d75
%global watchdog_timeout_default 5
fb4d75
%endif
fb4d75
fb4d75
# Be careful with sync_resource_startup_default
fb4d75
# being enabled. This configuration has
fb4d75
# to be in sync with configuration in pacemaker
fb4d75
# where it is called sbd_sync - assure by e.g.
fb4d75
# mutual rpm dependencies.
fb4d75
%bcond_without sync_resource_startup_default
fb4d75
# Syncing enabled per default will lead to
fb4d75
# syncing enabled on upgrade without adaption
fb4d75
# of the config.
fb4d75
# Setting can still be overruled via sysconfig.
fb4d75
# The setting in the config-template packaged
fb4d75
# will follow the default if below is is left
fb4d75
# empty. But it is possible to have the setting
fb4d75
# in the config-template deviate from the default
fb4d75
# by setting below to an explicit 'yes' or 'no'.
fb4d75
%global sync_resource_startup_sysconfig ""
fb4d75
fb4d75
Name:           sbd
fb4d75
Summary:        Storage-based death
fb4d75
License:        GPLv2+
fb4d75
Version:        1.5.1
fb4d75
Release:        %{buildnum}%{?dist}
fb4d75
Url:            https://github.com/%{github_owner}/%{name}
fb4d75
Source0:        https://github.com/%{github_owner}/%{name}/archive/%{longcommit}/%{name}-%{longcommit}.tar.gz
4c9e01
Patch0:         0001-Fix-Be-a-bit-more-descriptive-on-issues-opening-watc.patch
fb4d75
BuildRequires:  autoconf
fb4d75
BuildRequires:  automake
fb4d75
BuildRequires:  libuuid-devel
fb4d75
BuildRequires:  glib2-devel
fb4d75
BuildRequires:  libaio-devel
fb4d75
BuildRequires:  corosync-devel
fb4d75
BuildRequires:  pacemaker-libs-devel
fb4d75
BuildRequires:  libtool
fb4d75
BuildRequires:  libuuid-devel
fb4d75
BuildRequires:  libxml2-devel
fb4d75
BuildRequires:  pkgconfig
fb4d75
BuildRequires:  make
fb4d75
BuildRequires:  systemd
fb4d75
Conflicts:      fence-agents-sbd < 4.5.0
fb4d75
Conflicts:      pacemaker-libs < 2.1.0-5
fb4d75
fb4d75
%if 0%{?rhel}
fb4d75
ExclusiveArch: i686 x86_64 s390x aarch64 ppc64le
fb4d75
%endif
fb4d75
fb4d75
%if %{defined systemd_requires}
fb4d75
%systemd_requires
fb4d75
%endif
fb4d75
fb4d75
%description
fb4d75
fb4d75
This package contains the storage-based death functionality.
fb4d75
fb4d75
Available rpmbuild rebuild options:
fb4d75
  --with(out) : sync_resource_startup_default
fb4d75
fb4d75
%package tests
fb4d75
Summary:        Storage-based death environment for regression tests
fb4d75
License:        GPLv2+
fb4d75
fb4d75
%description tests
fb4d75
This package provides an environment + testscripts for
fb4d75
regression-testing sbd.
fb4d75
fb4d75
###########################################################
fb4d75
fb4d75
%prep
fb4d75
%autosetup -n %{name}-%{longcommit} -p1
fb4d75
fb4d75
###########################################################
fb4d75
fb4d75
%build
fb4d75
./autogen.sh
fb4d75
export CFLAGS="$RPM_OPT_FLAGS -Wall -Werror"
fb4d75
%configure --with-watchdog-timeout-default=%{watchdog_timeout_default} \
fb4d75
           --with-sync-resource-startup-default=%{?with_sync_resource_startup_default:yes}%{!?with_sync_resource_startup_default:no} \
fb4d75
           --with-sync-resource-startup-sysconfig=%{sync_resource_startup_sysconfig} \
fb4d75
           --runstatedir=%{_rundir}
fb4d75
make %{?_smp_mflags}
fb4d75
fb4d75
###########################################################
fb4d75
fb4d75
%install
fb4d75
fb4d75
make DESTDIR=$RPM_BUILD_ROOT LIBDIR=%{_libdir} install
fb4d75
rm -rf ${RPM_BUILD_ROOT}%{_libdir}/stonith
fb4d75
fb4d75
install -D -m 0755 tests/regressions.sh $RPM_BUILD_ROOT/usr/share/sbd/regressions.sh
fb4d75
%if %{defined _unitdir}
fb4d75
install -D -m 0644 src/sbd.service $RPM_BUILD_ROOT/%{_unitdir}/sbd.service
fb4d75
install -D -m 0644 src/sbd_remote.service $RPM_BUILD_ROOT/%{_unitdir}/sbd_remote.service
fb4d75
%endif
fb4d75
fb4d75
mkdir -p ${RPM_BUILD_ROOT}%{_sysconfdir}/sysconfig
fb4d75
install -m 644 src/sbd.sysconfig ${RPM_BUILD_ROOT}%{_sysconfdir}/sysconfig/sbd
fb4d75
fb4d75
# Don't package static libs
fb4d75
find %{buildroot} -name '*.a' -type f -print0 | xargs -0 rm -f
fb4d75
find %{buildroot} -name '*.la' -type f -print0 | xargs -0 rm -f
fb4d75
fb4d75
###########################################################
fb4d75
fb4d75
%if %{defined _unitdir}
fb4d75
%post
fb4d75
%systemd_post sbd.service
fb4d75
%systemd_post sbd_remote.service
fb4d75
if [ $1 -ne 1 ] ; then
fb4d75
	if systemctl --quiet is-enabled sbd.service 2>/dev/null
fb4d75
	then
fb4d75
		systemctl --quiet reenable sbd.service 2>/dev/null || :
fb4d75
	fi
fb4d75
	if systemctl --quiet is-enabled sbd_remote.service 2>/dev/null
fb4d75
	then
fb4d75
		systemctl --quiet reenable sbd_remote.service 2>/dev/null || :
fb4d75
	fi
fb4d75
fi
fb4d75
fb4d75
%preun
fb4d75
%systemd_preun sbd.service
fb4d75
%systemd_preun sbd_remote.service
fb4d75
fb4d75
%postun
fb4d75
%systemd_postun sbd.service
fb4d75
%systemd_postun sbd_remote.service
fb4d75
%endif
fb4d75
fb4d75
%files
fb4d75
###########################################################
fb4d75
%defattr(-,root,root)
fb4d75
%config(noreplace) %{_sysconfdir}/sysconfig/sbd
fb4d75
%{_sbindir}/sbd
fb4d75
%{_datadir}/sbd
fb4d75
%{_datadir}/pkgconfig/sbd.pc
fb4d75
%exclude %{_datadir}/sbd/regressions.sh
fb4d75
%doc %{_mandir}/man8/sbd*
fb4d75
%if %{defined _unitdir}
fb4d75
%{_unitdir}/sbd.service
fb4d75
%{_unitdir}/sbd_remote.service
fb4d75
%endif
fb4d75
%doc COPYING
fb4d75
fb4d75
%files tests
fb4d75
###########################################################
fb4d75
%defattr(-,root,root)
fb4d75
%dir %{_datadir}/sbd
fb4d75
%{_datadir}/sbd/regressions.sh
fb4d75
%{_libdir}/libsbdtestbed*
fb4d75
fb4d75
%changelog
4c9e01
* Mon Jul 18 2022 Klaus Wenninger <kwenning@redhat.com> - 1.5.1-3
4c9e01
- Be a bit more descriptive on issues opening watchdog-devices
4c9e01
4c9e01
  Resolves: rhbz#2108122
4c9e01
fb4d75
* Mon Dec 6 2021 Klaus Wenninger <kwenning@redhat.com> - 1.5.1-2
fb4d75
- obviously autoconf is defining runstatedir - but with a
fb4d75
  wrong default - directly hand it over to configure
fb4d75
  and skip --with-runstatedir implemented in configure.ac
fb4d75
  for older versions of autoconf
fb4d75
fb4d75
  Resolves: rhbz#2011707
fb4d75
fb4d75
* Wed Dec 1 2021 Klaus Wenninger <kwenning@redhat.com> - 1.5.1-1
fb4d75
- rebase to upstream v1.5.1
fb4d75
fb4d75
  Resolves: rhbz#2013261
fb4d75
fb4d75
* Tue Aug 10 2021 Mohan Boddu <mboddu@redhat.com> - 1.5.0-2.1
fb4d75
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
fb4d75
  Related: rhbz#1991688
fb4d75
fb4d75
* Fri Jul 9 2021 Klaus Wenninger <kwenning@redhat.com> - 1.5.0-2
fb4d75
- properly conflict with pacemaker not providing sync-default we need
fb4d75
  Resolves: rhbz#1979961
fb4d75
  Resolves: rhbz#1979573
fb4d75
fb4d75
* Tue Jul 6 2021 Klaus Wenninger <kwenning@redhat.com> - 1.5.0-1
fb4d75
- sync with fedora sbd-1.5.0-1
fb4d75
  Resolves: rhbz#1979961
fb4d75
  Resolves: rhbz#1979573
fb4d75
fb4d75
* Fri Apr 16 2021 Mohan Boddu <mboddu@redhat.com> - 1.4.2-3.2
fb4d75
- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937
fb4d75
fb4d75
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.4.2-3.1
fb4d75
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
fb4d75
fb4d75
* Mon Dec 7 2020 Klaus Wenninger <kwenning@redhat.com> - 1.4.2-3
fb4d75
- this time really remove dist.depcheck from gating
fb4d75
fb4d75
* Mon Dec 7 2020 Klaus Wenninger <kwenning@redhat.com> - 1.4.2-2
fb4d75
- remove deprecated dist.depcheck from gating
fb4d75
- add tier0 to push_stable to have rawhide gated as well
fb4d75
fb4d75
* Mon Dec 7 2020 Klaus Wenninger <kwenning@redhat.com> - 1.4.2-1
fb4d75
- Rebase to upstream v1.4.2
fb4d75
- Conflict with pacemaker that doesn't have pacemakerd-api
fb4d75
- Set default to not do startup/shutdown-syncing via pacemakerd-api
fb4d75
  but enable in template-config
fb4d75
fb4d75
* Wed Jul 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.4.1-7.1
fb4d75
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
fb4d75
fb4d75
* Thu May 14 2020 Klaus Wenninger <kwenning@redhat.com> - 1.4.1-7
fb4d75
- Rebuild against libqb2.0 (f33-build-side-23348)
fb4d75
fb4d75
* Wed Mar 11 2020 Klaus Wenninger <kwenning@redhat.com> - 1.4.1-6
fb4d75
- Rebuild because tagging the build failed
fb4d75
fb4d75
* Thu Mar 5 2020 Klaus Wenninger <kwenning@redhat.com> - 1.4.1-5
fb4d75
- Rebase to upstream v1.4.1
fb4d75
- Make coverity happy with parameter passing in regressions.sh
fb4d75
- Add auto generated environment section to man-page
fb4d75
- Overhaul setting scheduler policy/priority
fb4d75
- Enable Fedora CI Gating
fb4d75
fb4d75
* Thu Jan 30 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.4.0-3
fb4d75
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
fb4d75
fb4d75
* Fri Jul 26 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.4.0-2
fb4d75
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
fb4d75
fb4d75
* Fri Feb 1 2019 Klaus Wenninger <kwenning@redhat.com> - 1.4.0-1
fb4d75
- Rebase to upstream v1.4.0
fb4d75
- Fail earlier on invalid servants (solves GCC9 build issue as well)
fb4d75
fb4d75
* Wed Nov 21 2018 Klaus Wenninger <kwenning@redhat.com> - 1.3.1-1.git4927571
fb4d75
- Rebased to commit 4927571f8e9b00db8242654b1329dfbd71dcfe99
fb4d75
- Removed disabling of shared-disk-support
fb4d75
  Resolves rhbz#1606301
fb4d75
fb4d75
* Sat Jul 14 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.2.1-4.3
fb4d75
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
fb4d75
fb4d75
* Sun Mar 18 2018 Iryna Shcherbina <ishcherb@redhat.com> - 1.2.1-4.2
fb4d75
- Update Python 2 dependency declarations to new packaging standards
fb4d75
  (See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3)
fb4d75
fb4d75
* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.2.1-4.1
fb4d75
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
fb4d75
fb4d75
* Tue Jan 30 2018 Merlin Mathesius <mmathesi@redhat.com> - 1.2.1-4
fb4d75
- Patch to use correct C inline function semantics to fix FTBFS (BZ#1424417)
fb4d75
  Cleanup spec file conditionals
fb4d75
fb4d75
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.2.1-3.4
fb4d75
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
fb4d75
fb4d75
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.2.1-3.3
fb4d75
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
fb4d75
fb4d75
* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.2.1-3.2
fb4d75
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
fb4d75
fb4d75
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 1.2.1-3.1
fb4d75
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
fb4d75
fb4d75
* Tue Jan 19 2016 Jan Pokorný <jpokorny+rpm-sbd@redhat.com> - 1.2.1-3
fb4d75
- Rebuilt for libpe_status soname bump arising from Pacemaker 1.1.14
fb4d75
fb4d75
* Thu Jul 02 2015 Ralf Corsépius <corsepiu@fedoraproject.org> - 1.2.1-2
fb4d75
- Add dist-tag (RHBZ #1237187).
fb4d75
fb4d75
* Fri Jun 19 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.2.1-1.1
fb4d75
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
fb4d75
fb4d75
* Thu Oct 30 2014 <andrew@beekhof.net> - 1.2.1-1
fb4d75
- Correctly enable /proc/pid validation for sbd_lock_running()
fb4d75
- Improved integration with the el7 environment
fb4d75
fb4d75
* Fri Aug 29 2014 <andrew@beekhof.net> - 1.2.1-0.2.8f912945.git
fb4d75
- Remove some additional SUSE-isms
fb4d75
fb4d75
* Fri Aug 29 2014 <andrew@beekhof.net> - 1.2.1-0.1.8f912945.git
fb4d75
- Prepare for package review
fb4d75
  Resolves: rhbz#1134245