import CS resource-agents-sap-hana-scaleout-0.185.3-0.el9_5.1

This commit is contained in:
eabdullin 2024-11-12 09:22:06 +00:00
parent 48fdbf6684
commit 4dcb151ec9
4 changed files with 121 additions and 94 deletions

2
.gitignore vendored
View File

@ -1,2 +1,2 @@
SOURCES/ClusterLabs-resource-agents-e76b7d3a.tar.gz
SOURCES/SAPHanaSR-ScaleOut-b2c5218.tar.gz
SOURCES/SAPHanaSR-ScaleOut-f716fd8.tar.gz

View File

@ -1,2 +1,2 @@
b1c1e65d690d94e080319217486f8dcd248b2a2a SOURCES/ClusterLabs-resource-agents-e76b7d3a.tar.gz
874bcb0898d1f8a99b2972c8f49a42c0fe7c0389 SOURCES/SAPHanaSR-ScaleOut-b2c5218.tar.gz
e85c6e55cb01e60b67b510d5db4014cb70e6c1c7 SOURCES/SAPHanaSR-ScaleOut-f716fd8.tar.gz

View File

@ -1,41 +0,0 @@
From 5206e517e190b3c8dfc4b075cb31b5070e9670d4 Mon Sep 17 00:00:00 2001
From: Oyvind Albrigtsen <oalbrigt@redhat.com>
Date: Thu, 20 Jan 2022 10:54:54 +0100
Subject: [PATCH] SAPHana*: follow OCF standard for version and OCF version in
metadata
---
heartbeat/SAPHanaController | 4 ++--
heartbeat/SAPHanaTopology | 4 ++--
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/heartbeat/SAPHanaController b/heartbeat/SAPHanaController
index 767af44..c365f4a 100755
--- a/heartbeat/SAPHanaController
+++ b/heartbeat/SAPHanaController
@@ -166,8 +166,8 @@ function saphana_meta_data() {
cat <<END
<?xml version="1.0"?>
<!DOCTYPE resource-agent SYSTEM "ra-api-1.dtd">
-<resource-agent name="SAPHanaController">
-<version>$SAPHanaControllerVersion</version>
+<resource-agent name="SAPHanaController" version="$SAPHanaControllerVersion">
+<version>1.0</version>
<shortdesc lang="en">Manages two SAP HANA database systems in system replication (SR).</shortdesc>
<longdesc lang="en">
diff --git a/heartbeat/SAPHanaTopology b/heartbeat/SAPHanaTopology
index 05014af..7f6f4d9 100755
--- a/heartbeat/SAPHanaTopology
+++ b/heartbeat/SAPHanaTopology
@@ -132,8 +132,8 @@ function sht_meta_data() {
cat <<END
<?xml version="1.0"?>
<!DOCTYPE resource-agent SYSTEM "ra-api-1.dtd">
-<resource-agent name="SAPHanaTopology">
- <version>$SAPHanaTopologyVersion</version>
+<resource-agent name="SAPHanaTopology" version="$SAPHanaTopologyVersion">
+ <version>1.0</version>
<shortdesc lang="en">Analyzes SAP HANA System Replication Topology.</shortdesc>
<longdesc lang="en">This RA analyzes the SAP HANA topology and "sends" all findings via the node status attributes to
all nodes in the cluster. These attributes are taken by the SAPHana RA to control the SAP Hana Databases.

View File

@ -22,8 +22,8 @@
%global upstream_prefix ClusterLabs-resource-agents
%global upstream_version e76b7d3a
%global saphana_scaleout_prefix SAPHanaSR-ScaleOut
%global saphana_scaleout_hash b2c5218
%global saphana_prefix SAPHanaSR-ScaleOut
%global saphana_hash f716fd8
# Whether this platform defaults to using systemd as an init system
# (needs to be evaluated prior to BuildRequires being enumerated and
@ -45,24 +45,23 @@
%bcond_with rgmanager
%bcond_without linuxha
Name: resource-agents-sap-hana-scaleout
Summary: SAP HANA Scale-Out cluster resource agents
Epoch: 1
Version: 0.164.2
Release: 3%{?rcver:%{rcver}}%{?numcomm:.%{numcomm}}%{?alphatag:.%{alphatag}}%{?dirty:.%{dirty}}%{?dist}
License: GPLv2+
URL: https://github.com/SUSE/SAPHanaSR-ScaleOut
Source0: %{upstream_prefix}-%{upstream_version}.tar.gz
Source1: %{saphana_scaleout_prefix}-%{saphana_scaleout_hash}.tar.gz
Patch0: bz2042921-SAPHanaController-SAPHanaTopology-fix-metadata-version.patch
Name: resource-agents-sap-hana-scaleout
Summary: SAP HANA Scale-Out cluster resource agents
Epoch: 1
Version: 0.185.3
Release: 0%{?rcver:%{rcver}}%{?numcomm:.%{numcomm}}%{?alphatag:.%{alphatag}}%{?dirty:.%{dirty}}%{?dist}.1
License: GPLv2+
URL: https://github.com/SUSE/SAPHanaSR-ScaleOut
Source0: %{upstream_prefix}-%{upstream_version}.tar.gz
Source1: %{saphana_prefix}-%{saphana_hash}.tar.gz
BuildArch: noarch
BuildArch: noarch
# Build dependencies
BuildRequires: make
BuildRequires: automake autoconf pkgconfig gcc
BuildRequires: perl-interpreter
BuildRequires: libxslt glib2-devel
BuildRequires: perl-interpreter perl-generators
BuildRequires: libxslt glib2-devel libqb-devel
BuildRequires: systemd
BuildRequires: which
@ -85,11 +84,11 @@ BuildRequires: libglue-devel
BuildRequires: libxslt docbook_4 docbook-xsl-stylesheets
%endif
Requires: resource-agents >= 4.8.0
Conflicts: resource-agents-sap-hana
Requires: resource-agents >= 4.8.0
Conflicts: resource-agents-sap-hana
Requires: /bin/bash /usr/bin/grep /bin/sed /bin/gawk
Requires: perl
Requires: perl-interpreter
%description
The SAP HANA Scale-Out resource agents interface with Pacemaker
@ -101,17 +100,38 @@ environment.
%setup -q -T -D -a 1 -n %{upstream_prefix}-%{upstream_version}
# add SAPHana agents to Makefile.am
mv %{saphana_scaleout_prefix}-%{saphana_scaleout_hash}/SAPHana/ra/SAPHana* heartbeat
sed -i -e '/ SAPInstance \\/a\ SAPHanaController \\\n SAPHanaTopology \\' heartbeat/Makefile.am
sed -i -e '/ ocf_heartbeat_SAPInstance.7 \\/a\ ocf_heartbeat_SAPHanaController.7 \\\n ocf_heartbeat_SAPHanaTopology.7 \\' doc/man/Makefile.am
mv %{saphana_prefix}-%{saphana_hash}/SAPHana/ra/SAPHana* heartbeat
cp %{saphana_scaleout_prefix}-%{saphana_scaleout_hash}/SAPHana/doc/LICENSE .
# Find the existing SAPInstance entry in the list and add 2 new after in corresponding formatting.
# heartbeat/Makefile.am indents by 3 tabs in the target list
sed -i -e 's/\(\t\tSAPInstance\t\t\\\)/\1\n\t\t\tSAPHanaController\t\t\t\\\n\t\t\tSAPHanaTopology\t\\/' heartbeat/Makefile.am
# Find the existing SAPInstance entry in the list and add 2 new after in corresponding formatting.
# doc/man/Makefile.am indents by 26 spaces in the target list
sed -i -e 's/\( \{26\}ocf_heartbeat_SAPInstance.7 \\\)/\1\n'\
' ocf_heartbeat_SAPHanaController.7 \\\n'\
' ocf_heartbeat_SAPHanaTopology.7 \\/' doc/man/Makefile.am
# change provider company in hook scripts
sed -i -e 's/\("provider_company": \)"SUSE"/\1"Red Hat"/g' %{saphana_prefix}-%{saphana_hash}/SAPHana/srHook/SAPHanaSR.py
sed -i -e 's/\("provider_company": \)"SUSE"/\1"Red Hat"/g' %{saphana_prefix}-%{saphana_hash}/SAPHana/srHook/SAPHanaSrMultiTarget.py
sed -i -e 's/\("provider_company": \)"SUSE"/\1"Red Hat"/g' %{saphana_prefix}-%{saphana_hash}/SAPHana/srHook/susChkSrv.py
# rename patterns explicitly to remove "sus" prefix in files
sed -i -e 's/susChkSrv/ChkSrv/g' %{saphana_prefix}-%{saphana_hash}/SAPHana/srHook/susChkSrv.py
sed -i -e 's/suschksrv/chksrv/g' %{saphana_prefix}-%{saphana_hash}/SAPHana/srHook/susChkSrv.py
sed -i -e 's/sustkover_timeout/tkover_timeout/g' %{saphana_prefix}-%{saphana_hash}/SAPHana/srHook/susChkSrv.py
sed -i -e 's/susChkSrv/ChkSrv/g' %{saphana_prefix}-%{saphana_hash}/SAPHana/srHook/global.ini_ChkSrv
sed -i -e 's/suschksrv/chksrv/g' %{saphana_prefix}-%{saphana_hash}/SAPHana/srHook/global.ini_ChkSrv
# copy the license
cp %{saphana_prefix}-%{saphana_hash}/SAPHana/doc/LICENSE .
%patch0 -p1
%build
if [ ! -f configure ]; then
./autogen.sh
./autogen.sh
fi
%if 0%{?fedora} >= 11 || 0%{?centos} > 5 || 0%{?rhel} > 5
@ -136,9 +156,9 @@ export CFLAGS
%configure \
%if 0%{?fedora} || 0%{?centos} > 7 || 0%{?rhel} > 7 || 0%{?suse_version}
PYTHON="%{__python3}" \
PYTHON="%{__python3}" \
%endif
%{conf_opt_fatal} \
%{conf_opt_fatal} \
%if %{defined _unitdir}
--with-systemdsystemunitdir=%{_unitdir} \
%endif
@ -146,35 +166,57 @@ export CFLAGS
--with-systemdtmpfilesdir=%{_tmpfilesdir} \
--with-rsctmpdir=/run/resource-agents \
%endif
--with-pkg-name=resource-agents \
--with-ras-set=%{rasset}
--with-pkg-name=resource-agents \
--with-ras-set=%{rasset}
%if %{defined jobs}
JFLAGS="$(echo '-j%{jobs}')"
%else
JFLAGS="$(echo '%{_smp_mflags}')"
%endif
make $JFLAGS
make %{_smp_mflags}
%install
rm -rf %{buildroot}
make install DESTDIR=%{buildroot}
# remove other agents
# Remove other agents
find %{buildroot}/usr/lib/ocf ! -type d ! -iname "SAPHana*" -exec rm {} \;
find %{buildroot}/%{_mandir} -type f ! -iname "*SAPHana*" -exec rm {} \;
install -m 0755 %{saphana_scaleout_prefix}-%{saphana_scaleout_hash}/SAPHana/bin/{SAPHanaSR-monitor,SAPHanaSR-showAttr} %{buildroot}/%{_sbindir}
mkdir %{buildroot}/%{_usr}/lib/SAPHanaSR-ScaleOut
install -m 0444 %{saphana_scaleout_prefix}-%{saphana_scaleout_hash}/SAPHana/test/SAPHanaSRTools.pm %{buildroot}/%{_usr}/lib/SAPHanaSR-ScaleOut/SAPHanaSRTools.pm
mkdir -p %{buildroot}/%{_datadir}/SAPHanaSR-ScaleOut/samples
install -m 0644 %{saphana_scaleout_prefix}-%{saphana_scaleout_hash}/SAPHana/srHook/SAPHanaSR.py %{buildroot}/%{_datadir}/SAPHanaSR-ScaleOut
install -m 0444 %{saphana_scaleout_prefix}-%{saphana_scaleout_hash}/SAPHana/crmconfig/* %{buildroot}/%{_datadir}/SAPHanaSR-ScaleOut/samples
install -m 0444 %{saphana_scaleout_prefix}-%{saphana_scaleout_hash}/SAPHana/srHook/global.ini %{buildroot}/%{_datadir}/SAPHanaSR-ScaleOut/samples
gzip %{saphana_scaleout_prefix}-%{saphana_scaleout_hash}/SAPHana/man/SAPHanaSR*.?
cp %{saphana_scaleout_prefix}-%{saphana_scaleout_hash}/SAPHana/man/SAPHanaSR*.7.gz %{buildroot}/%{_mandir}/man7
cp %{saphana_scaleout_prefix}-%{saphana_scaleout_hash}/SAPHana/man/SAPHanaSR*.8.gz %{buildroot}/%{_mandir}/man8
# Dir structure
mkdir -p %{buildroot}/%{_datadir}/%{saphana_prefix}/samples
mkdir -p %{buildroot}/%{_sbindir}
mkdir -p %{buildroot}/%{_usr}/lib/%{saphana_prefix}
# Perl scripts for some add-on functionality.
# SAPHanaSRTools is a lib imported by SAPHanaSR-* perl scripts.
install -m 0444 %{saphana_prefix}-%{saphana_hash}/SAPHana/test/SAPHanaSRTools.pm \
%{buildroot}/%{_usr}/lib/%{saphana_prefix}/SAPHanaSRTools.pm
# Use 0755 instead of 0555 because it was shipped like this before.
install -m 0755 %{saphana_prefix}-%{saphana_hash}/SAPHana/bin/SAPHanaSR-showAttr \
%{buildroot}/%{_sbindir}
# Keeping because it was shipped before.
install -m 0755 %{saphana_prefix}-%{saphana_hash}/SAPHana/bin/SAPHanaSR-monitor \
%{buildroot}/%{_sbindir}
# Hook scripts - sanitize upstream names where needed
install -m 0644 %{saphana_prefix}-%{saphana_hash}/SAPHana/srHook/SAPHanaSR.py \
%{buildroot}/%{_datadir}/%{saphana_prefix}
install -m 0644 %{saphana_prefix}-%{saphana_hash}/SAPHana/srHook/SAPHanaSrMultiTarget.py \
%{buildroot}/%{_datadir}/%{saphana_prefix}
install -m 0644 %{saphana_prefix}-%{saphana_hash}/SAPHana/srHook/susChkSrv.py \
%{buildroot}/%{_datadir}/%{saphana_prefix}/ChkSrv.py
# Sample config files
install -m 0444 %{saphana_prefix}-%{saphana_hash}/SAPHana/srHook/global.ini \
%{buildroot}/%{_datadir}/%{saphana_prefix}/samples
install -m 0444 %{saphana_prefix}-%{saphana_hash}/SAPHana/srHook/global.ini_ChkSrv \
%{buildroot}/%{_datadir}/%{saphana_prefix}/samples
# Keeping because it was shipped before.
install -m 0444 %{saphana_prefix}-%{saphana_hash}/SAPHana/crmconfig/* \
%{buildroot}/%{_datadir}/%{saphana_prefix}/samples
# Keeping the man pages because they were already shipped before.
# Removed in RHEL 10 for a cleaner solution.
gzip %{saphana_prefix}-%{saphana_hash}/SAPHana/man/SAPHanaSR*.?
cp %{saphana_prefix}-%{saphana_hash}/SAPHana/man/SAPHanaSR*.7.gz %{buildroot}/%{_mandir}/man7
cp %{saphana_prefix}-%{saphana_hash}/SAPHana/man/SAPHanaSR*.8.gz %{buildroot}/%{_mandir}/man8
## tree fixup
# remove docs (there is only one and they should come from doc sections in files)
@ -184,11 +226,20 @@ rm -rf %{buildroot}/usr/share/doc/resource-agents
%defattr(-,root,root)
%license LICENSE
%{_usr}/lib/ocf/resource.d/heartbeat/SAPHana*
%{_mandir}/man7/*SAPHana*
%{_mandir}/man8/*SAPHana*
%{_sbindir}/SAPHanaSR*
%{_usr}/lib/SAPHanaSR-ScaleOut
%{_datadir}/SAPHanaSR-ScaleOut
%{_usr}/lib/%{saphana_prefix}
%{_datadir}/%{saphana_prefix}
%{_mandir}/man7/ocf_heartbeat_SAPHanaController.7.gz
%{_mandir}/man7/ocf_heartbeat_SAPHanaTopology.7.gz
# Explicitly include these upstream man pages due to their previous presence.
%{_mandir}/man7/SAPHanaSR-ScaleOut.7.gz
%{_mandir}/man7/SAPHanaSR-ScaleOut_basic_cluster.7.gz
%{_mandir}/man7/SAPHanaSR.py.7.gz
%{_mandir}/man7/SAPHanaSR_maintenance_examples.7.gz
%{_mandir}/man8/SAPHanaSR-filter.8.gz
%{_mandir}/man8/SAPHanaSR-monitor.8.gz
%{_mandir}/man8/SAPHanaSR-replay-archive.8.gz
%{_mandir}/man8/SAPHanaSR-showAttr.8.gz
%exclude /etc
%exclude /usr/include
@ -200,10 +251,25 @@ rm -rf %{buildroot}/usr/share/doc/resource-agents
%exclude /usr/sbin/ocf*
%exclude /usr/share/resource-agents
%exclude /usr/share/pkgconfig/resource-agents.pc
%exclude /usr/src
# Exclude new man pages that were not part of previous packages.
%exclude %{_mandir}/man7/SAPHanaSR_upgrade_to_angi.7.gz
%exclude %{_mandir}/man8/SAPHanaSR-hookHelper.8.gz
%exclude %{_mandir}/man8/SAPHanaSR-manageAttr.8.gz
%exclude %{_mandir}/man8/SAPHanaSR-manageProvider.8.gz
%exclude %{_mandir}/man8/SAPHanaSR-show-hadr-runtimes.8.gz
%changelog
* Thu Aug 29 2024 Janine Fuchs <jfuchs@redhat.com> - 0.185.3-0.1
- Rebase to SAPHanaSR-ScaleOut 0.185.3 upstream and include the
optional hook scripts for hanging HDBindexserver services and
improved multi-target functionality.
Resolves: RHEL-2287
- Change perl dependency to perl-interpreter.
Resolves: RHEL-53822
* Thu Jan 20 2022 Oyvind Albrigtsen <oalbrigt@redhat.com> - 0.164.2-3
- SAPHanaController/SAPHanaTopology: follow OCF standard for version
and OCF version in metadata
@ -236,3 +302,5 @@ rm -rf %{buildroot}/usr/share/doc/resource-agents
- Initial build as separate package
Resolves: rhbz#1705765
# vim:set ai ts=2 sw=2 sts=2 et: