diff --git a/_service b/_service
index b6ec5f4..696d7a1 100644
--- a/_service
+++ b/_service
@@ -11,7 +11,7 @@
1.1.16
-->
1.1.16+git%cd.%h
- a7825f4f0a8db272d1ce0b1f93e8044cbcaa5144
+ e55d506cc390f0a0335b4ec6e365ea89da30b6b1
diff --git a/bug-1028138_pacemaker-pacemaker.service-TasksMax.patch b/bug-1028138_pacemaker-pacemaker.service-TasksMax.patch
new file mode 100644
index 0000000..413d046
--- /dev/null
+++ b/bug-1028138_pacemaker-pacemaker.service-TasksMax.patch
@@ -0,0 +1,12 @@
+Index: pacemaker/mcp/pacemaker.service.in
+===================================================================
+--- pacemaker.orig/mcp/pacemaker.service.in
++++ pacemaker/mcp/pacemaker.service.in
+@@ -26,6 +26,7 @@ NotifyAccess=main
+ EnvironmentFile=-@CONFIGDIR@/pacemaker
+ EnvironmentFile=-@CONFIGDIR@/sbd
+ SuccessExitStatus=100
++TasksMax=4915
+
+ ExecStart=@sbindir@/pacemakerd -f
+
diff --git a/pacemaker-1.1.16+20170316.e55d506.tar.bz2 b/pacemaker-1.1.16+20170316.e55d506.tar.bz2
new file mode 100644
index 0000000..eef1984
--- /dev/null
+++ b/pacemaker-1.1.16+20170316.e55d506.tar.bz2
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:4df686152c55ef41368f960bf94f5af09cc02eb681fdad85678edf0423b666ca
+size 3966055
diff --git a/pacemaker-1.1.16+git20170302.a7825f4.tar.bz2 b/pacemaker-1.1.16+git20170302.a7825f4.tar.bz2
deleted file mode 100644
index 0462e85..0000000
--- a/pacemaker-1.1.16+git20170302.a7825f4.tar.bz2
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:d30636bdece960e43b562392b4f461adbd2c213c83bc6fc88aed7c7217121994
-size 3602760
diff --git a/pacemaker.changes b/pacemaker.changes
index 51ea242..f346e9c 100644
--- a/pacemaker.changes
+++ b/pacemaker.changes
@@ -1,3 +1,21 @@
+-------------------------------------------------------------------
+Thu Mar 16 14:25:19 UTC 2017 - ygao@suse.com
+
+- crmd: new cluster option stonith-max-attempts with default value 10
+- crmd: Change of the log level and addition of uuid.
+- crmd: use new attrd op to clear fail counts
+- tools: crm_resource -C should clear last-failure
+- libcrmcommon: add API for new attrd clear-failure operation
+- attrd: add more detail to legacy attrd messages
+- attrd: add API for clearing failures
+- Upstream version cs: e55d506cc390f0a0335b4ec6e365ea89da30b6b1
+
+-------------------------------------------------------------------
+Mon Mar 13 13:46:36 UTC 2017 - ygao@suse.com
+
+- pacemaker.service: Add presetting TasksMax=4915 (bsc#1028138)
+ * bug-1028138_pacemaker-pacemaker.service-TasksMax.patch
+
-------------------------------------------------------------------
Tue Mar 7 00:01:15 UTC 2017 - ygao@suse.com
diff --git a/pacemaker.spec b/pacemaker.spec
index 196f44a..ae5de6a 100644
--- a/pacemaker.spec
+++ b/pacemaker.spec
@@ -25,8 +25,10 @@
## Where to install Pacemaker documentation
%global pcmk_docdir %{_docdir}/%{name}
+%global commit 1.1.16+20170316.e55d506
+
## Corosync version
-%global cs_version 2
+%define cs_version 2
%define with_nagios 1
%define with_snmp 1
@@ -42,12 +44,29 @@
## Add option to enable support for stonith/external fencing agents
%bcond_without stonithd
+## Add option to create binaries suitable for use with profiling tools
+%bcond_with profiling
+
+## Add option to create binaries with coverage analysis
+%bcond_with coverage
+
## Add option to skip generating documentation
## (the build tools aren't available everywhere)
%bcond_with doc
+## Add option to turn off hardening of libraries and daemon executables
+%bcond_with hardening
+
+# Keep sane profiling data if requested
+%if %{with profiling}
+
+## Disable -debuginfo package and stripping binaries/libraries
+%define debug_package %{nil}
+
+%endif
+
Name: pacemaker
-Version: 1.1.16+git20170302.a7825f4
+Version: 1.1.16
Release: 0
Summary: Scalable High-Availability cluster resource manager
License: GPL-2.0 and GPL-2.0+ and LGPL-2.1+
@@ -56,7 +75,7 @@ Group: Productivity/Clustering/HA
Url: http://www.clusterlabs.org
# Hint: use "spectool -s 0 pacemaker.spec" (rpmdevtools) to check the final URL:
# https://github.com/ClusterLabs/pacemaker/archive/e91769e5a39f5cb2f7b097d3c612368f0530535e/pacemaker-e91769e.tar.gz
-Source0: %{name}-%{version}.tar.bz2
+Source0: %{name}-%{commit}.tar.bz2
Source1: crm_report.in
Source100: pacemaker.rpmlintrc
Patch1: bug-806256_pacemaker-log-level-notice.patch
@@ -70,6 +89,7 @@ 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
Patch11: pacemaker-lrmd.h-include-libxml.patch
+Patch12: bug-1028138_pacemaker-pacemaker.service-TasksMax.patch
# Required for core functionality
BuildRequires: autoconf
BuildRequires: automake
@@ -256,7 +276,8 @@ Summary: Test framework for cluster-related technologies
Group: Productivity/Clustering/HA
Requires: libpacemaker3 = %{version}-%{release}
Requires: python >= 2.6
-Requires: python-systemd
+#Requires: python-systemd
+Recommends: python-systemd
%description cts
Test framework for cluster-related technologies like Pacemaker
@@ -274,7 +295,7 @@ manager for Corosync, CMAN and/or Linux-HA.
%endif
%prep
-%setup -q
+%setup -q -n %{name}-%{commit}
%patch1 -p1
%patch2 -p1
%patch3 -p1
@@ -286,19 +307,32 @@ manager for Corosync, CMAN and/or Linux-HA.
%patch9 -p1
%patch10 -p1
%patch11 -p1
+%patch12 -p1
%build
export systemdunitdir=%{?_unitdir}%{?!_unitdir:no}
+%if %{with hardening}
+# prefer distro-provided hardening flags in case they are defined
+# through _hardening_{c,ld}flags macros, configure script will
+# use its own defaults otherwise; if such hardenings are completely
+# undesired, rpmbuild using "--without hardening"
+# (or "--define '_without_hardening 1'")
+export CFLAGS_HARDENED_EXE="%{?_hardening_cflags}"
+export CFLAGS_HARDENED_LIB="%{?_hardening_cflags}"
+export LDFLAGS_HARDENED_EXE="%{?_hardening_ldflags}"
+export LDFLAGS_HARDENED_LIB="%{?_hardening_ldflags}"
+%endif
+
autoreconf -fvi
%configure \
+ %{?with_profiling: --with-profiling} \
+ %{?with_coverage: --with-coverage} \
--docdir=%{_docdir}/%{name} \
--disable-static \
--disable-silent-rules \
- --without-profiling \
- --without-coverage \
--without-cman \
--without-heartbeat \
--with-acl=true \
@@ -318,6 +352,7 @@ autoreconf -fvi
--enable-fatal-warnings=no \
%endif
%{!?with_doc: --with-brand=} \
+ %{!?with_hardening: --disable-hardening} \
--with-initdir=%{_initddir} \
--localstatedir=%{_var} \
--with-version=%{version}-%{release}
@@ -337,8 +372,11 @@ chmod a+x %{buildroot}/%{_datadir}/pacemaker/tests/cts/CTSlab.py
# These are not actually scripts
find %{buildroot} -name '*.xml' -type f -print0 | xargs -0 chmod a-x
+# Don't package static libs
+find %{buildroot} -type f -name "*.a" -delete -print
find %{buildroot} -type f -name "*.la" -delete -print
+# Do not package these either
rm -f %{buildroot}/%{_libdir}/service_crm.so
# Don't ship init scripts for systemd based platforms
@@ -348,6 +386,16 @@ rm -f %{buildroot}/%{_initddir}/pacemaker_remote
# Don't ship fence_pcmk where it has no use
rm -f %{buildroot}/%{_sbindir}/fence_pcmk
+%if %{with coverage}
+GCOV_BASE=%{buildroot}/%{_var}/lib/pacemaker/gcov
+mkdir -p $GCOV_BASE
+find . -name '*.gcno' -type f | while read F ; do
+ D=`dirname $F`
+ mkdir -p ${GCOV_BASE}/$D
+ cp $F ${GCOV_BASE}/$D
+done
+%endif
+
ln -s service %{buildroot}%{_sbindir}/rcpacemaker
ln -s service %{buildroot}%{_sbindir}/rcpacemaker_remote
ln -s service %{buildroot}%{_sbindir}/rccrm_mon
@@ -595,6 +643,9 @@ fi
%{_datadir}/pacemaker/tests
%{_includedir}/pacemaker
%{_libdir}/*.so
+%if %{with coverage}
+%{_var}/lib/pacemaker/gcov
+%endif
%{_libdir}/pkgconfig/*.pc
#%license licenses/LGPLv2.1
%doc COPYING ChangeLog