Accepting request 439181 from home:yan_gao:branches:network:ha-clustering:Factory:Test

- Revert "Build: configure: make systemd detection akin to + before Upstart one"
  * pacemaker-configure-systemd-detection.patch
- libcrmcommon: fix CVE-2016-7035 (improper IPC guarding) (bsc#1007433)
- various: issues discovered via valgrind and coverity
- attrd_updater: fix usage of HAVE_ATOMIC_ATTRD
- Upstream version cs: b6f251a13fadca0cb74702b0c007a55275c8ea09

- Rebase:
  * pacemaker-NodeUtilization-RA.patch
- extra: add resource agent for managing a node attribute
- crmd: cl#5185 - Record pending operations in the CIB before they are performed (bsc#1003565)
- ClusterMon: fix to avoid matching other process with the same PID
- mcp: improve comments for sysconfig options
- spec: require libqb >= 0.13.0
- tools: crm_standby --version/--help should work without cluster
- spec: reorganize so %pre etc. blocks are self-contained
- spec: require python >= 2.6
- spec: comment better
- libpengine: ensure child is not null before looking up value
- libpengine: only log startup-fencing warning once
- Upstream version cs: 722276c442bf023931842313bfe0dfb7d90a7c15

- pacemaker.service: do not mistakenly suggest killing fenced
- pacemaker.spec: consume "systemdunitdir" via %_unitdir
- libcrmcommon: report errors consistently when waiting for data on connection (bsc#986644)
- libservices: use DBusError API properly
- remote: Correctly calculate the remaining timeouts when receiving messages (bsc#986644)
- libfencing: report added node ID correctly
- crm_mon: Do not call setenv with null value
- pacemaker_remote: allow remote clients to timeout/reconnect

OBS-URL: https://build.opensuse.org/request/show/439181
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=255
This commit is contained in:
Yan Gao
2016-11-08 10:56:04 +00:00
committed by Git OBS Bridge
parent e3d978ecb2
commit 4e69252716
7 changed files with 251 additions and 44 deletions

View File

@@ -16,10 +16,18 @@
#
%global gname haclient
# Globals and defines to control package behavior (configure these as desired)
## User and group to use for nonprivileged services
%global uname hacluster
%global gname haclient
## Where to install Pacemaker documentation
%global pcmk_docdir %{_docdir}/%{name}
## Corosync version
%global cs_version 2
%define with_nagios 1
%define with_snmp 1
%define with_esmtp 1
@@ -27,15 +35,19 @@
%define enable_lib_cluster_pkg 0
%define enable_fatal_warnings 0
%define with_regression_tests 0
# Conditionals
# Invoke "rpmbuild --without <feature>" or "rpmbuild --with <feature>"
# to disable or enable specific features
# Legacy stonithd fencing agents
# Define conditionals so that "rpmbuild --with <feature>" and
# "rpmbuild --without <feature>" can enable and disable specific features
## Add option to enable support for stonith/external fencing agents
%bcond_without stonithd
# We generate docs using Publican, Asciidoc and Inkscape, but they're not available everywhere
## Add option to skip generating documentation
## (the build tools aren't available everywhere)
%bcond_with doc
Name: pacemaker
Version: 1.1.15+git20160708.58fef06
Version: 1.1.15+git20161104.b6f251a
Release: 0
Summary: Scalable High-Availability cluster resource manager
License: GPL-2.0 and GPL-2.0+ and LGPL-2.1+
@@ -56,39 +68,44 @@ Patch7: pacemaker-Wno-format-signedness.patch
Patch8: bug-943295_pacemaker-lrmd-log-notice.patch
Patch9: bug-977201_pacemaker-controld-self-fencing.patch
Patch10: bug-995365_pacemaker-cts-restart-systemd-journald.patch
# Required for core functionality (python-devel depends on python)
Patch11: pacemaker-configure-systemd-detection.patch
# Required for core functionality
BuildRequires: autoconf
BuildRequires: automake
BuildRequires: bison
BuildRequires: coreutils
BuildRequires: fdupes
BuildRequires: findutils
BuildRequires: flex
BuildRequires: grep
BuildRequires: help2man
BuildRequires: libtool
BuildRequires: ncurses-devel
BuildRequires: pam-devel
BuildRequires: pkgconfig
BuildRequires: python
# Required for agent_config.h which specifies the correct scratch directory
BuildRequires: resource-agents
BuildRequires: sed
BuildRequires: pkgconfig(bzip2)
BuildRequires: pkgconfig(corosync)
BuildRequires: pkgconfig(dbus-1)
BuildRequires: pkgconfig(glib-2.0)
BuildRequires: pkgconfig(gnutls)
BuildRequires: pkgconfig(libexslt)
# We need reasonably recent versions of libqb
BuildRequires: pkgconfig(libqb) > 0.11.0
# Pacemaker requires a minimum libqb functionality
BuildRequires: pkgconfig(libqb) > 0.13.0
BuildRequires: pkgconfig(libxml-2.0)
BuildRequires: pkgconfig(libxslt)
BuildRequires: pkgconfig(python)
# Pacemaker targets compatibility with python 2.6+ and 3.2+
BuildRequires: pkgconfig(python) >= 2.6
BuildRequires: pkgconfig(systemd)
BuildRequires: pkgconfig(uuid)
Requires: %{name}-cli = %{version}-%{release}
Requires: corosync
Requires: libpacemaker3 = %{version}-%{release}
Requires: libqb > 0.11.0
Requires: libqb > 0.13.0
Requires: psmisc
Requires: python
Requires: python >= 2.6
Requires: resource-agents
Recommends: crmsh
Recommends: fence-agents
@@ -235,7 +252,7 @@ for developing tools for Pacemaker.
Summary: Test framework for cluster-related technologies
Group: Productivity/Clustering/HA
Requires: libpacemaker3 = %{version}-%{release}
Requires: python
Requires: python >= 2.6
%description cts
Test framework for cluster-related technologies like Pacemaker
@@ -264,8 +281,12 @@ manager for Corosync, CMAN and/or Linux-HA.
%patch8 -p1
%patch9 -p1
%patch10 -p1
%patch11 -p1
%build
export systemdunitdir=%{?_unitdir}%{?!_unitdir:no}
autoreconf -fvi
%configure \
@@ -336,38 +357,38 @@ install -m 755 %{SOURCE1} %{buildroot}%{_sbindir}/crm_report
# Prevent false positives in rpmlint
./BasicSanity.sh -V pengine cli 2>&1
%post
%service_add_post pacemaker.service
%pre
%service_add_pre pacemaker.service
%post
%service_add_post pacemaker.service
%preun
%service_del_preun pacemaker.service
%postun
%service_del_postun pacemaker.service
%post remote
%service_add_post pacemaker_remote.service
%pre remote
%service_add_pre pacemaker_remote.service
%post remote
%service_add_post pacemaker_remote.service
%preun remote
%service_del_preun pacemaker_remote.service
%postun remote
%service_del_postun pacemaker_remote.service
%pre cli
%service_add_pre crm_mon.service
%post cli
%fillup_only pacemaker
%service_add_post crm_mon.service
%fillup_only crm_mon
%pre cli
%service_add_pre crm_mon.service
%preun cli
%service_del_preun crm_mon.service
@@ -433,7 +454,8 @@ fi
%doc %{_datadir}/pacemaker/alerts
%doc COPYING AUTHORS ChangeLog
#%license licenses/GPLv2
%doc COPYING ChangeLog
%dir %attr (750, %{uname}, %{gname}) %{_var}/lib/pacemaker/cib
%dir %attr (750, %{uname}, %{gname}) %{_var}/lib/pacemaker/pengine
@@ -501,7 +523,8 @@ fi
%exclude %{_mandir}/man8/pacemaker_remoted.*
%exclude %{_mandir}/man8/stonith_admin.*
%doc COPYING AUTHORS ChangeLog
#%license licenses/GPLv2
%doc COPYING ChangeLog
%dir %attr (750, %{uname}, %{gname}) %{_var}/lib/pacemaker
%dir %attr (750, %{uname}, %{gname}) %{_var}/lib/pacemaker/blackbox
@@ -519,14 +542,16 @@ fi
%{_libdir}/libpengine.so.*
%{_libdir}/libstonithd.so.*
%{_libdir}/libtransitioner.so.*
%doc COPYING.LIB AUTHORS
#%license licenses/LGPLv2.1
%doc COPYING ChangeLog
%{_libdir}/libcrmcluster.so.*
%if %{enable_lib_cluster_pkg}
%files -n libpacemaker3-cluster
%defattr(-,root,root)
%{_libdir}/libcrmcluster.so.*
%doc COPYING.LIB AUTHORS
#%license licenses/LGPLv2.1
%doc COPYING ChangeLog
%endif
%files remote
@@ -535,12 +560,14 @@ fi
%{_sbindir}/rcpacemaker_remote
%{_sbindir}/pacemaker_remoted
%{_mandir}/man8/pacemaker_remoted.8%{ext_man}
%doc COPYING AUTHORS
#%license licenses/GPLv2
%doc COPYING ChangeLog
%if %{with doc}
%files doc
%defattr(-,root,root)
%doc %{pcmk_docdir}
#%license licenses/CC-BY-SA-4.0
%endif
%files cts
@@ -548,7 +575,8 @@ fi
%{py_sitedir}/cts
%{_datadir}/pacemaker/tests/cts
%{_libexecdir}/pacemaker/lrmd_test
%doc COPYING AUTHORS
#%license licenses/GPLv2
%doc COPYING ChangeLog
%files -n libpacemaker-devel
%defattr(-,root,root)
@@ -557,6 +585,7 @@ fi
%{_includedir}/pacemaker
%{_libdir}/*.so
%{_libdir}/pkgconfig/*.pc
%doc COPYING.LIB AUTHORS
#%license licenses/LGPLv2.1
%doc COPYING ChangeLog
%changelog