From 595ee6bf2a7d18022e3d17a40b07aafea1960ecf Mon Sep 17 00:00:00 2001 From: Klaus Wenninger Date: Tue, 1 Jun 2021 13:50:20 +0200 Subject: [PATCH] * Mon Jun 1 2021 Klaus Wenninger - 2.1.0-0.3.rc2 - Update for new upstream tarball for release candidate: Pacemaker-2.1.0-rc2, for full details, see included ChangeLog file or https://github.com/ClusterLabs/pacemaker/releases/tag/Pacemaker-2.1.0-rc2 - merge changes in upstream specfile sind Pacemaker-2.1.0-rc1 add configurable ocf_root enable cibsecrets for > f33 require libqb >= 0.17.0 instead of 0.13.0 default to syncing with sbd conflict all sbd < 1.4.3 to enforce sbd-build has the same default --- pacemaker.spec | 71 ++++++++++++++++++++++++++++++++++++++------------ sources | 2 +- 2 files changed, 55 insertions(+), 18 deletions(-) diff --git a/pacemaker.spec b/pacemaker.spec index 885a70e..979a0e0 100644 --- a/pacemaker.spec +++ b/pacemaker.spec @@ -15,15 +15,21 @@ ## GitHub entity that distributes source (for ease of using a fork) %global github_owner ClusterLabs +## Where bug reports should be submitted +## Leave bug_url undefined to use ClusterLabs default, others define it here + +## What to use as the OCF resource agent root directory +%global ocf_root %{_prefix}/lib/ocf + ## Upstream pacemaker version, and its package version (specversion ## can be incremented to build packages reliably considered "newer" ## than previously built packages with the same pcmkversion) %global pcmkversion 2.1.0 -%global specversion 2 +%global specversion 3 ## Upstream commit (or git tag, such as "Pacemaker-" plus the ## {pcmkversion} macro for an official release) to use for this package -%global commit Pacemaker-2.1.0-rc1 +%global commit Pacemaker-2.1.0-rc2 ## Since git v2.11, the extent of abbreviation is autoscaled by default ## (used to be constant of 7), so we need to convey it for non-tags, too. %global commit_abbrev 9 @@ -33,8 +39,12 @@ ## NOTE: skip --with stonithd -## Add option to enable support for storing sensitive information outside CIB +## Add option for whether to support storing sensitive information outside CIB +%if (0%{?fedora} && 0%{?fedora} <= 33) || (0%{?rhel} && 0%{?rhel} <= 8) %bcond_with cibsecrets +%else +%bcond_without cibsecrets +%endif ## Add option to create binaries suitable for use with profiling tools %bcond_with profiling @@ -45,6 +55,15 @@ ## Add option to skip/enable generating documentation %bcond_without doc +## Add option to default to start-up synchronization with SBD. +## +## If enabled, SBD *MUST* be built to default similarly, otherwise data +## corruption could occur. Building both Pacemaker and SBD to default +## to synchronization improves safety, without requiring higher-level tools +## to be aware of the setting or requiring users to modify configurations +## after upgrading to versions that support synchronization. +%bcond_without sbd_sync + ## Add option to prefix package version with "0." ## (so later "official" packages will be considered updates) %bcond_without pre_release @@ -167,14 +186,15 @@ BuildRequires: make BuildRequires: %{python_name}-devel >= %{python_min} # Pacemaker requires a minimum libqb functionality -Requires: libqb >= 0.13.0 -BuildRequires: libqb-devel >= 0.13.0 +Requires: libqb >= 0.17.0 +BuildRequires: libqb-devel >= 0.17.0 -# Basics required for the build (even if usually satisfied through other BRs) +# Required basic build tools BuildRequires: coreutils findutils grep sed +BuildRequires: autoconf automake gcc make pkgconfig +BuildRequires: libtool libtool-ltdl-devel # Required for core functionality -BuildRequires: automake autoconf gcc libtool pkgconfig libtool-ltdl-devel BuildRequires: pkgconfig(glib-2.0) >= 2.42 BuildRequires: libxml2-devel libxslt-devel libuuid-devel BuildRequires: bzip2-devel @@ -245,7 +265,10 @@ Summary: Core Pacemaker libraries Requires(pre): shadow-utils Requires: %{name}-schemas = %{version}-%{release} # sbd 1.4.0+ supports the libpe_status API for pe_working_set_t -Conflicts: sbd < 1.4.0 +# sbd 1.4.2+ supports startup/shutdown handshake via pacemakerd-api +# and handshake defaults to enabled for rhel builds +# sbd 1.4.3+ handshake defaults to enabled for fedora builds +Conflicts: sbd < 1.4.3 %description libs Pacemaker is an advanced, scalable High-Availability cluster resource @@ -268,7 +291,7 @@ libraries needed for nodes that will form part of the cluster nodes. %package remote License: GPLv2+ and LGPLv2+ -Summary: Pacemaker remote daemon for non-cluster nodes +Summary: Pacemaker remote executor daemon for non-cluster nodes Requires: %{name}-libs%{?_isa} = %{version}-%{release} Requires: %{name}-cli = %{version}-%{release} Requires: resource-agents @@ -386,7 +409,10 @@ export LDFLAGS_HARDENED_LIB="%{?_hardening_ldflags}" %{?with_profiling: --with-profiling} \ %{?with_coverage: --with-coverage} \ %{?with_cibsecrets: --with-cibsecrets} \ + %{?with_sbd_sync: --with-sbd-sync-default="true"} \ %{?gnutls_priorities: --with-gnutls-priorities="%{gnutls_priorities}"} \ + %{?bug_url: --with-bug-url=%{bug_url}} \ + %{?ocf_root: --with-ocfdir=%{ocf_root}} \ %{?concurrent_fencing} \ %{?resource_stickiness} \ %{?compat20} \ @@ -572,8 +598,8 @@ exit 0 %dir %attr (750, %{uname}, %{gname}) %{_var}/lib/pacemaker/cib %dir %attr (750, %{uname}, %{gname}) %{_var}/lib/pacemaker/pengine -/usr/lib/ocf/resource.d/pacemaker/controld -/usr/lib/ocf/resource.d/pacemaker/remote +%{ocf_root}/resource.d/pacemaker/controld +%{ocf_root}/resource.d/pacemaker/remote %files cli %dir %attr (750, root, %{gname}) %{_sysconfdir}/pacemaker @@ -609,13 +635,13 @@ exit 0 # XXX "dirname" is not owned by any prerequisite %{_datadir}/snmp/mibs/PCMK-MIB.txt -%exclude /usr/lib/ocf/resource.d/pacemaker/controld -%exclude /usr/lib/ocf/resource.d/pacemaker/o2cb -%exclude /usr/lib/ocf/resource.d/pacemaker/remote +%exclude %{ocf_root}/resource.d/pacemaker/controld +%exclude %{ocf_root}/resource.d/pacemaker/o2cb +%exclude %{ocf_root}/resource.d/pacemaker/remote -%dir /usr/lib/ocf -%dir /usr/lib/ocf/resource.d -/usr/lib/ocf/resource.d/pacemaker +%dir %{ocf_root} +%dir %{ocf_root}/resource.d +%{ocf_root}/resource.d/pacemaker %doc %{_mandir}/man7/* %exclude %{_mandir}/man7/pacemaker-controld.* @@ -716,6 +742,17 @@ exit 0 %license %{nagios_name}-%{nagios_hash}/COPYING %changelog +* Mon Jun 1 2021 Klaus Wenninger - 2.1.0-0.3.rc2 +- Update for new upstream tarball for release candidate: Pacemaker-2.1.0-rc2, + for full details, see included ChangeLog file or + https://github.com/ClusterLabs/pacemaker/releases/tag/Pacemaker-2.1.0-rc2 +- merge changes in upstream specfile sind Pacemaker-2.1.0-rc1 + add configurable ocf_root + enable cibsecrets for > f33 + require libqb >= 0.17.0 instead of 0.13.0 + default to syncing with sbd + conflict all sbd < 1.4.3 to enforce sbd-build has the same default + * Wed May 5 2021 Klaus Wenninger - 2.1.0-0.2.rc1 - remove PCMK_TIME_EMERGENCY_CGT not present in pacemaker codebase anymore - enable Pacemaker-2.0-compatibility for a fedora versions diff --git a/sources b/sources index a976443..76e3c9a 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ SHA512 (nagios-agents-metadata-105ab8a7b2c16b9a29cf1c1596b80136eeef332b.tar.gz) = 11ddeb48a4929e7642b6dfa9c7962aa1d7a1af1c569830f55ed6cd6773abac13377317327bc1db8411c8077884f83f81cc54d746c834b63a99fa6dc219b5caad -SHA512 (pacemaker-Pacemaker-2.1.0-rc1.tar.gz) = 64fef270ac0f0df63a2ac974c4467dfb6a646cbe2089c6b523f14311bf236653caa75cd9e2851af7882057d63651ecd3c9d40647349a76619c4522c938063acf +SHA512 (pacemaker-Pacemaker-2.1.0-rc2.tar.gz) = 01396cd23b0cb49cab40b870e227b132f1e0c9b94cf6ac29d58e61bd3ff4ee4ea95fa6509c9a4a09179284b8fdbdba8319ceb46e8f94ce9cea92cf13832f9f4d