Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
f55ac1fa56 | ||
| 4d60c242c2 |
4
.gitignore
vendored
4
.gitignore
vendored
@ -1,2 +1,2 @@
|
||||
ClusterLabs-resource-agents-a6ccb93a.tar.gz
|
||||
sap-hana-ha-87a5781.tar.gz
|
||||
SOURCES/ClusterLabs-resource-agents-a6ccb93a.tar.gz
|
||||
SOURCES/sap-hana-ha-919eda64.tar.gz
|
||||
|
||||
2
.sap-hana-ha.metadata
Normal file
2
.sap-hana-ha.metadata
Normal file
@ -0,0 +1,2 @@
|
||||
1b9dca55ed882a6353ac3fdf2cbbe572ff2a1618 SOURCES/ClusterLabs-resource-agents-a6ccb93a.tar.gz
|
||||
2fa876cb4e914d5e135dcf8ff8deae60de18e6e1 SOURCES/sap-hana-ha-919eda64.tar.gz
|
||||
221
SOURCES/0001-feat-simplified-fencing-and-site-lookup.patch
Normal file
221
SOURCES/0001-feat-simplified-fencing-and-site-lookup.patch
Normal file
@ -0,0 +1,221 @@
|
||||
From b545ef462f4fe43c132fa37ebba80d26efb73d97 Mon Sep 17 00:00:00 2001
|
||||
From: Janine Fuchs <jfuchs@redhat.com>
|
||||
Date: Thu, 17 Jul 2025 19:52:23 +0200
|
||||
Subject: [PATCH 1/2] enh(fencing): generic commands and options
|
||||
|
||||
Use pacemaker builtin commands for the fencing instead of cluster
|
||||
shell specific commands. `sudo` is not required for the hacluster
|
||||
user when using the pacemaker commands.
|
||||
---
|
||||
alert/SAPHanaSR-alert-fencing | 15 ++++++++++-----
|
||||
tools/SAPHanaSR-hookHelper | 13 +++++++------
|
||||
2 files changed, 17 insertions(+), 11 deletions(-)
|
||||
|
||||
diff --git a/alert/SAPHanaSR-alert-fencing b/alert/SAPHanaSR-alert-fencing
|
||||
index 48a25ab8..a2d288cc 100755
|
||||
--- a/alert/SAPHanaSR-alert-fencing
|
||||
+++ b/alert/SAPHanaSR-alert-fencing
|
||||
@@ -5,11 +5,17 @@
|
||||
# Support: linux@sap.com
|
||||
# License: GNU General Public License (GPL)
|
||||
# Copyright: (c) 2024-2025 SUSE LLC
|
||||
-# Version: 2025-07-30-17:50
|
||||
+# Version: 2025-10-01-13:42
|
||||
+#
|
||||
+# Configure the alert with crmsh:
|
||||
#
|
||||
# crm configure alert nodes-1 "/usr/bin/SAPHanaSR-alert-fencing" select nodes
|
||||
# crm configure alert fencing-1 "/usr/bin/SAPHanaSR-alert-fencing" select fencing attributes alert_uptime_threshold=300
|
||||
#
|
||||
+# Configure the alert with pcs:
|
||||
+#
|
||||
+# pcs alert create id=alert-hana-1 path=/usr/bin/SAPHanaSR-alert-fencing options alert_uptime_threshold=300
|
||||
+# cibadmin --modify --scope alerts --xml-text '<alert id="alert-hana-1"> <select> <select_nodes /> <select_fencing /> </select> </alert>'
|
||||
|
||||
logger_tag="SAPHanaSR-alert-fencing"
|
||||
logger="/usr/bin/logger"
|
||||
@@ -41,11 +47,10 @@ function process_fencing()
|
||||
if [[ "$local_site_name" != "" && "$fenced_site_name" == "$local_site_name" ]]; then
|
||||
$logger -t "$logger_tag" "DEC: FENCE ($fenced_site_name == $local_site_name)"
|
||||
sleep 10
|
||||
- sudo /usr/sbin/crm --force node fence "${HOSTNAME}"; rc="$?"
|
||||
- # alternative option, needs crmsh fix #1229030
|
||||
- # /usr/sbin/crm_attribute -t status -n terminate -v true -N "${HOSTNAME}"; rc="$?"
|
||||
+ /usr/sbin/crm_attribute -t status -N "${HOSTNAME}" -n terminate -v true
|
||||
+ rc="$?"
|
||||
if [[ "$rc" != "0" ]]; then
|
||||
- $logger -t "$logger_tag" "ACT: sudo /usr/sbin/crm --force node fence ${HOSTNAME}; rc=$rc"
|
||||
+ $logger -t "$logger_tag" "ACT: /usr/sbin/crm_attribute -t status -N \"${HOSTNAME}\" -n terminate -v true; rc=$?"
|
||||
fi
|
||||
else
|
||||
$logger -t "$logger_tag" "DEC: NO FENCE ($fenced_site_name != $local_site_name)"
|
||||
diff --git a/tools/SAPHanaSR-hookHelper b/tools/SAPHanaSR-hookHelper
|
||||
index 006c5f04..ebf2af09 100755
|
||||
--- a/tools/SAPHanaSR-hookHelper
|
||||
+++ b/tools/SAPHanaSR-hookHelper
|
||||
@@ -154,7 +154,7 @@ stopSystemAndWait() {
|
||||
##### main
|
||||
|
||||
# variables
|
||||
-version="202208091454"
|
||||
+version="202510011251"
|
||||
exe="$0"
|
||||
cmd=$(basename "$exe")
|
||||
|
||||
@@ -252,15 +252,16 @@ case "$USECASE" in
|
||||
;;
|
||||
"fenceMe" )
|
||||
nodeName=$(/usr/sbin/crm_node -n)
|
||||
- #stonith_admin --reboot="$nodeName"
|
||||
# only 'activate' the /root/SAPHanaSR-hookHelper.log logging, if really needed for debugging
|
||||
#echo "$(date) SAPHanaSR-hookHelper fenceMe" >> /root/SAPHanaSR-hookHelper.log
|
||||
su - "${ASID}adm" -c "HDB kill-9"
|
||||
#echo "$(date) SAPHanaSR-hookHelper fenceMe - killed, now fence" >> /root/SAPHanaSR-hookHelper.log
|
||||
- # alternative option
|
||||
- # /usr/sbin/crm_attribute -t status -n terminate -v true -N "$nodeName"
|
||||
- /usr/sbin/crm --force node fence "$nodeName"
|
||||
- rc=42 # if fence is working this rc should never been send back
|
||||
+ /usr/sbin/crm_attribute -t status -N "${nodeName}" -n terminate -v true
|
||||
+ # Sleep until fencing takes us down or someone removes the 'terminate' attribute.
|
||||
+ while [ "$(/usr/sbin/crm_attribute -t status -N "${nodeName}" -n terminate -G -d false -q)" == "true" ]; do
|
||||
+ sleep 10
|
||||
+ done
|
||||
+ rc=42
|
||||
;;
|
||||
"firstStopThenKill" )
|
||||
#
|
||||
|
||||
From 0d5860a12a0b2c9170ec90de5cb91d5d405c5a1b Mon Sep 17 00:00:00 2001
|
||||
From: Janine Fuchs <105372097+ja9fuchs@users.noreply.github.com>
|
||||
Date: Thu, 30 Oct 2025 13:41:38 +0100
|
||||
Subject: [PATCH 2/2] fix(site lookup): different hostname and node name
|
||||
|
||||
- BUGFIX for the case when the cluster node name is different from the
|
||||
hostname.
|
||||
- Query the site attributes directly.
|
||||
This removes the dependency on the cache file that is created by a
|
||||
chain involving an optional resource and another tool, which also
|
||||
uses CIB queries as its source.
|
||||
The local host does not have to parse information for its own name.
|
||||
- Commented out unused variable for clarity and possible future use.
|
||||
---
|
||||
alert/SAPHanaSR-alert-fencing | 67 ++++++++++++++---------------------
|
||||
1 file changed, 26 insertions(+), 41 deletions(-)
|
||||
|
||||
diff --git a/alert/SAPHanaSR-alert-fencing b/alert/SAPHanaSR-alert-fencing
|
||||
index a2d288cc..9a86452a 100755
|
||||
--- a/alert/SAPHanaSR-alert-fencing
|
||||
+++ b/alert/SAPHanaSR-alert-fencing
|
||||
@@ -5,7 +5,7 @@
|
||||
# Support: linux@sap.com
|
||||
# License: GNU General Public License (GPL)
|
||||
# Copyright: (c) 2024-2025 SUSE LLC
|
||||
-# Version: 2025-10-01-13:42
|
||||
+# Version: 2025-10-30-13:50
|
||||
#
|
||||
# Configure the alert with crmsh:
|
||||
#
|
||||
@@ -21,42 +21,37 @@ logger_tag="SAPHanaSR-alert-fencing"
|
||||
logger="/usr/bin/logger"
|
||||
|
||||
# ON_FAIL_ACTION="${OCF_RESKEY_ON_FAIL_ACTION:-proceed}"
|
||||
-CRM_alert_recipient="${CRM_alert_recipient:-/dev/null}"
|
||||
+# CRM_alert_recipient="${CRM_alert_recipient:-/dev/null}"
|
||||
crm_alert_kind="${CRM_alert_kind:-manual call}"
|
||||
crm_alert_node="${CRM_alert_node:-$HOSTNAME}"
|
||||
crm_alert_desc="${CRM_alert_desc:-no description provided}"
|
||||
|
||||
-cache_file="/run/crm/SAPHanaSR_site_cache"
|
||||
-
|
||||
alert_uptime_threshold="${alert_uptime_threshold:-300}"
|
||||
+# Get the site name of the alerting node - value only
|
||||
+fenced_site_name="$(crm_attribute --node "${crm_alert_node}" --query --pattern hana_..._site --quiet)"
|
||||
+# Get the site name of the local cluster node - value only
|
||||
+local_site_name="$(crm_attribute --type nodes --query --pattern hana_..._site --quiet)"
|
||||
|
||||
IFS=. read -r sys_uptime REST </proc/uptime
|
||||
$logger -t "$logger_tag" "AH: begin event '$crm_alert_kind' (uptime=$sys_uptime, alert_uptime_threshold=$alert_uptime_threshold)"
|
||||
|
||||
function process_fencing()
|
||||
{
|
||||
- # SAPHanaSR_site_cache has format (each line) host:site_name
|
||||
- # figure out fenced site
|
||||
-
|
||||
if [[ "$sys_uptime" -ge "$alert_uptime_threshold" ]]; then
|
||||
- if [[ -e "$cache_file" ]]; then
|
||||
- fenced_site_name=$(awk -F: '$1 == host { print $2 }' host="${crm_alert_node}" "$cache_file")
|
||||
- local_site_name=$(awk -F: '$1 == host { print $2 }' host="${HOSTNAME}" "$cache_file")
|
||||
- $logger -t "$logger_tag" "INFO: cache_file=$cache_file, crm_alert_node=$crm_alert_node"
|
||||
- $logger -t "$logger_tag" "INFO: fenced_site_name=$fenced_site_name, local_site_name=$local_site_name"
|
||||
- if [[ "$local_site_name" != "" && "$fenced_site_name" == "$local_site_name" ]]; then
|
||||
- $logger -t "$logger_tag" "DEC: FENCE ($fenced_site_name == $local_site_name)"
|
||||
- sleep 10
|
||||
- /usr/sbin/crm_attribute -t status -N "${HOSTNAME}" -n terminate -v true
|
||||
- rc="$?"
|
||||
- if [[ "$rc" != "0" ]]; then
|
||||
- $logger -t "$logger_tag" "ACT: /usr/sbin/crm_attribute -t status -N \"${HOSTNAME}\" -n terminate -v true; rc=$?"
|
||||
- fi
|
||||
- else
|
||||
- $logger -t "$logger_tag" "DEC: NO FENCE ($fenced_site_name != $local_site_name)"
|
||||
+ $logger -t "$logger_tag" "INFO: crm_alert_node=$crm_alert_node"
|
||||
+ $logger -t "$logger_tag" "INFO: fenced_site_name=$fenced_site_name, local_site_name=$local_site_name"
|
||||
+ if [[ "$local_site_name" != "" && "$fenced_site_name" == "$local_site_name" ]]; then
|
||||
+ $logger -t "$logger_tag" "DEC: FENCE ($fenced_site_name == $local_site_name)"
|
||||
+ # Delay the fencing action to write logs first
|
||||
+ sleep 10
|
||||
+ # Set the 'terminate' status attribute for the current node
|
||||
+ /usr/sbin/crm_attribute -t status -n terminate -v true
|
||||
+ rc="$?"
|
||||
+ if [[ "$rc" != "0" ]]; then
|
||||
+ $logger -t "$logger_tag" "ACT: /usr/sbin/crm_attribute -t status -n terminate -v true; rc=$rc"
|
||||
fi
|
||||
else
|
||||
- $logger -t "$logger_tag" "DEC: NO FENCE (no cache)"
|
||||
+ $logger -t "$logger_tag" "DEC: NO FENCE ($fenced_site_name != $local_site_name)"
|
||||
fi
|
||||
else
|
||||
$logger -t "$logger_tag" "DEC: NO FENCE (uptime < alert_uptime_threshold)"
|
||||
@@ -65,27 +60,17 @@ function process_fencing()
|
||||
|
||||
function check_fencing()
|
||||
{
|
||||
- # SAPHanaSR_site_cache has format (each line) host:site_name
|
||||
- # figure out fenced site
|
||||
-
|
||||
- if [[ -e "$cache_file" ]]; then
|
||||
- fenced_site_name=$(awk -F: '$1 == host { print $2 }' host="${crm_alert_node}" "$cache_file")
|
||||
- local_site_name=$(awk -F: '$1 == host { print $2 }' host="${HOSTNAME}" "$cache_file")
|
||||
- $logger -t "$logger_tag" "INFO: cache_file=$cache_file"
|
||||
- $logger -t "$logger_tag" "INFO: fenced_site_name=$fenced_site_name, local_site_name=$local_site_name"
|
||||
- if [[ "$local_site_name" != "" && "$fenced_site_name" == "$local_site_name" ]]; then
|
||||
- $logger -t "$logger_tag" "DEC: FENCE ($fenced_site_name == $local_site_name)"
|
||||
- else
|
||||
- $logger -t "$logger_tag" "DEC: NO FENCE ($fenced_site_name != $local_site_name)"
|
||||
- fi
|
||||
- else
|
||||
- $logger -t "$logger_tag" "DEC: NO FENCE (no cache)"
|
||||
- fi
|
||||
+ $logger -t "$logger_tag" "INFO: fenced_site_name=$fenced_site_name, local_site_name=$local_site_name"
|
||||
+ if [[ "$local_site_name" != "" && "$fenced_site_name" == "$local_site_name" ]]; then
|
||||
+ $logger -t "$logger_tag" "DEC: FENCE ($fenced_site_name == $local_site_name)"
|
||||
+ else
|
||||
+ $logger -t "$logger_tag" "DEC: NO FENCE ($fenced_site_name != $local_site_name)"
|
||||
+ fi
|
||||
}
|
||||
|
||||
case "$crm_alert_kind" in
|
||||
node|nodes)
|
||||
- msg="Node '${crm_alert_node}' is now '${crm_alert_desc}'"
|
||||
+ msg="Node '${crm_alert_node}' is now '${crm_alert_desc}'"
|
||||
$logger -t "$logger_tag" "INFO: $msg"
|
||||
;;
|
||||
fencing)
|
||||
@@ -99,7 +84,7 @@ case "$crm_alert_kind" in
|
||||
check_fencing
|
||||
;;
|
||||
*)
|
||||
- msg="Unhandled '$crm_alert_kind' alert (${crm_alert_desc})"
|
||||
+ msg="Unhandled '$crm_alert_kind' alert (${crm_alert_desc})"
|
||||
$logger -t "$logger_tag" "INFO: $msg"
|
||||
;;
|
||||
esac
|
||||
@ -1,6 +1,6 @@
|
||||
diff -up sap-hana-ha/ra/SAPHanaController.patch101 sap-hana-ha/ra/SAPHanaController
|
||||
--- sap-hana-ha/ra/SAPHanaController.patch101 2024-07-08 14:39:04.000000000 +0200
|
||||
+++ sap-hana-ha/ra/SAPHanaController 2024-08-19 12:30:40.033351892 +0200
|
||||
--- sap-hana-ha/ra/SAPHanaController.patch101 2025-10-10 09:14:45.000000000 +0200
|
||||
+++ sap-hana-ha/ra/SAPHanaController 2025-10-31 10:49:48.166556256 +0100
|
||||
@@ -47,11 +47,11 @@ OCF_FUNCTIONS_DIR="${OCF_FUNCTIONS_DIR:-
|
||||
source "${OCF_FUNCTIONS_DIR}/ocf-shellfuncs"
|
||||
# TODO PRIO1: NG - adjust the correct path and file name for the library to be sourced for first testing use current directory
|
||||
@ -17,8 +17,8 @@ diff -up sap-hana-ha/ra/SAPHanaController.patch101 sap-hana-ha/ra/SAPHanaControl
|
||||
#
|
||||
#######################################################################
|
||||
diff -up sap-hana-ha/ra/saphana-filesystem-lib.patch101 sap-hana-ha/ra/saphana-filesystem-lib
|
||||
--- sap-hana-ha/ra/saphana-filesystem-lib.patch101 2024-07-08 14:39:04.000000000 +0200
|
||||
+++ sap-hana-ha/ra/saphana-filesystem-lib 2024-08-19 12:30:40.034351894 +0200
|
||||
--- sap-hana-ha/ra/saphana-filesystem-lib.patch101 2025-10-10 09:14:45.000000000 +0200
|
||||
+++ sap-hana-ha/ra/saphana-filesystem-lib 2025-10-31 10:49:48.167686487 +0100
|
||||
@@ -109,7 +109,7 @@ until it gains success or migration-thre
|
||||
</parameter>
|
||||
<parameter name="DIRECTORY" unique="0" required="0">
|
||||
@ -38,8 +38,8 @@ diff -up sap-hana-ha/ra/saphana-filesystem-lib.patch101 sap-hana-ha/ra/saphana-f
|
||||
sid="${SID,,}"
|
||||
export sidadm="${sid}adm"
|
||||
diff -up sap-hana-ha/ra/SAPHanaFilesystem.patch101 sap-hana-ha/ra/SAPHanaFilesystem
|
||||
--- sap-hana-ha/ra/SAPHanaFilesystem.patch101 2024-07-08 14:39:04.000000000 +0200
|
||||
+++ sap-hana-ha/ra/SAPHanaFilesystem 2024-08-19 12:30:40.033351892 +0200
|
||||
--- sap-hana-ha/ra/SAPHanaFilesystem.patch101 2025-10-10 09:14:45.000000000 +0200
|
||||
+++ sap-hana-ha/ra/SAPHanaFilesystem 2025-10-31 10:49:48.166993509 +0100
|
||||
@@ -31,11 +31,11 @@ OCF_FUNCTIONS_DIR="${OCF_FUNCTIONS_DIR:-
|
||||
# shellcheck source=/dev/null
|
||||
source "${OCF_FUNCTIONS_DIR}/ocf-shellfuncs"
|
||||
@ -56,8 +56,8 @@ diff -up sap-hana-ha/ra/SAPHanaFilesystem.patch101 sap-hana-ha/ra/SAPHanaFilesys
|
||||
#
|
||||
#######################################################################
|
||||
diff -up sap-hana-ha/ra/SAPHanaTopology.patch101 sap-hana-ha/ra/SAPHanaTopology
|
||||
--- sap-hana-ha/ra/SAPHanaTopology.patch101 2024-07-08 14:39:04.000000000 +0200
|
||||
+++ sap-hana-ha/ra/SAPHanaTopology 2024-08-19 12:30:40.034351894 +0200
|
||||
--- sap-hana-ha/ra/SAPHanaTopology.patch101 2025-10-10 09:14:45.000000000 +0200
|
||||
+++ sap-hana-ha/ra/SAPHanaTopology 2025-10-31 10:49:48.167365080 +0100
|
||||
@@ -43,9 +43,9 @@ OCF_FUNCTIONS_DIR="${OCF_FUNCTIONS_DIR:-
|
||||
source "${OCF_FUNCTIONS_DIR}/ocf-shellfuncs"
|
||||
# TODO PRIO1: NG - adjust the correct path and file name for the library to be sourced for first testing use current directory
|
||||
@ -1,6 +1,24 @@
|
||||
diff -up sap-hana-ha/srHook/global.ini_susChkSrv_fence.patch100 sap-hana-ha/srHook/global.ini_susChkSrv_fence
|
||||
--- sap-hana-ha/srHook/global.ini_susChkSrv_fence.patch100 2025-10-10 09:14:45.000000000 +0200
|
||||
+++ sap-hana-ha/srHook/global.ini_susChkSrv_fence 2025-10-31 10:49:48.091634162 +0100
|
||||
@@ -1,10 +1,10 @@
|
||||
-[ha_dr_provider_suschksrv]
|
||||
-provider = susChkSrv
|
||||
-path = /usr/share/SAPHanaSR-angi/
|
||||
+[ha_dr_provider_chksrv]
|
||||
+provider = ChkSrv
|
||||
+path = /usr/share/sap-hana-ha/
|
||||
execution_order = 3
|
||||
action_on_lost = fence
|
||||
stop_timeout = 25
|
||||
|
||||
[trace]
|
||||
-ha_dr_suschksrv = info
|
||||
+ha_dr_chksrv = info
|
||||
|
||||
diff -up sap-hana-ha/srHook/global.ini_susChkSrv.patch100 sap-hana-ha/srHook/global.ini_susChkSrv
|
||||
--- sap-hana-ha/srHook/global.ini_susChkSrv.patch100 2024-07-08 14:39:04.000000000 +0200
|
||||
+++ sap-hana-ha/srHook/global.ini_susChkSrv 2024-08-19 12:30:39.985351798 +0200
|
||||
--- sap-hana-ha/srHook/global.ini_susChkSrv.patch100 2025-10-10 09:14:45.000000000 +0200
|
||||
+++ sap-hana-ha/srHook/global.ini_susChkSrv 2025-10-31 10:49:48.091138039 +0100
|
||||
@@ -1,10 +1,10 @@
|
||||
-[ha_dr_provider_suschksrv]
|
||||
-provider = susChkSrv
|
||||
@ -17,10 +35,10 @@ diff -up sap-hana-ha/srHook/global.ini_susChkSrv.patch100 sap-hana-ha/srHook/glo
|
||||
+ha_dr_chksrv = info
|
||||
|
||||
diff -up sap-hana-ha/srHook/global.ini_susCostOpt.patch100 sap-hana-ha/srHook/global.ini_susCostOpt
|
||||
--- sap-hana-ha/srHook/global.ini_susCostOpt.patch100 2024-07-08 14:39:04.000000000 +0200
|
||||
+++ sap-hana-ha/srHook/global.ini_susCostOpt 2024-08-19 12:30:39.986351800 +0200
|
||||
--- sap-hana-ha/srHook/global.ini_susCostOpt.patch100 2025-10-10 09:14:45.000000000 +0200
|
||||
+++ sap-hana-ha/srHook/global.ini_susCostOpt 2025-10-31 10:49:48.092069643 +0100
|
||||
@@ -1,6 +1,6 @@
|
||||
[ha_dr_provider_susCostOpt]
|
||||
[ha_dr_provider_suscostopt]
|
||||
provider = susCostOpt
|
||||
-path = /usr/share/SAPHanaSR-angi
|
||||
+path = /usr/share/sap-hana-ha
|
||||
@ -28,13 +46,13 @@ diff -up sap-hana-ha/srHook/global.ini_susCostOpt.patch100 sap-hana-ha/srHook/gl
|
||||
execution_order = 1
|
||||
|
||||
diff -up sap-hana-ha/srHook/global.ini_susHanaSR.patch100 sap-hana-ha/srHook/global.ini_susHanaSR
|
||||
--- sap-hana-ha/srHook/global.ini_susHanaSR.patch100 2024-07-08 14:39:04.000000000 +0200
|
||||
+++ sap-hana-ha/srHook/global.ini_susHanaSR 2024-08-19 12:30:39.986351800 +0200
|
||||
--- sap-hana-ha/srHook/global.ini_susHanaSR.patch100 2025-10-10 09:14:45.000000000 +0200
|
||||
+++ sap-hana-ha/srHook/global.ini_susHanaSR 2025-10-31 10:49:48.092636040 +0100
|
||||
@@ -1,7 +1,7 @@
|
||||
-[ha_dr_provider_susHanaSR]
|
||||
-[ha_dr_provider_sushanasr]
|
||||
-provider = susHanaSR
|
||||
-path = /usr/share/SAPHanaSR-angi
|
||||
+[ha_dr_provider_HanaSR]
|
||||
+[ha_dr_provider_hanasr]
|
||||
+provider = HanaSR
|
||||
+path = /usr/share/sap-hana-ha
|
||||
execution_order = 1
|
||||
@ -43,26 +61,26 @@ diff -up sap-hana-ha/srHook/global.ini_susHanaSR.patch100 sap-hana-ha/srHook/glo
|
||||
-ha_dr_sushanasr = info
|
||||
+ha_dr_hanasr = info
|
||||
diff -up sap-hana-ha/srHook/global.ini_susTkOver.patch100 sap-hana-ha/srHook/global.ini_susTkOver
|
||||
--- sap-hana-ha/srHook/global.ini_susTkOver.patch100 2024-07-08 14:39:04.000000000 +0200
|
||||
+++ sap-hana-ha/srHook/global.ini_susTkOver 2024-08-19 12:30:39.987351802 +0200
|
||||
--- sap-hana-ha/srHook/global.ini_susTkOver.patch100 2025-10-10 09:14:45.000000000 +0200
|
||||
+++ sap-hana-ha/srHook/global.ini_susTkOver 2025-10-31 10:49:48.093003104 +0100
|
||||
@@ -1,9 +1,9 @@
|
||||
-[ha_dr_provider_susTkOver]
|
||||
-[ha_dr_provider_sustkover]
|
||||
-provider = susTkOver
|
||||
-path = /usr/share/SAPHanaSR-angi
|
||||
-sustkover_timeout = 30
|
||||
+[ha_dr_provider_TkOver]
|
||||
+[ha_dr_provider_tkover]
|
||||
+provider = TkOver
|
||||
+path = /usr/share/sap-hana-ha
|
||||
+tkover_timeout = 30
|
||||
execution_order = 1
|
||||
|
||||
[trace]
|
||||
-ha_dr_susTkOver = info
|
||||
+ha_dr_TkOver = info
|
||||
-ha_dr_sustkover = info
|
||||
+ha_dr_tkover = info
|
||||
|
||||
diff -up sap-hana-ha/srHook/susChkSrv.py.patch100 sap-hana-ha/srHook/susChkSrv.py
|
||||
--- sap-hana-ha/srHook/susChkSrv.py.patch100 2024-07-08 14:39:04.000000000 +0200
|
||||
+++ sap-hana-ha/srHook/susChkSrv.py 2024-08-19 12:30:39.989351806 +0200
|
||||
--- sap-hana-ha/srHook/susChkSrv.py.patch100 2025-10-10 09:14:45.000000000 +0200
|
||||
+++ sap-hana-ha/srHook/susChkSrv.py 2025-10-31 10:49:48.094003106 +0100
|
||||
@@ -1,15 +1,15 @@
|
||||
# pylint: disable=invalid-name,fixme
|
||||
"""
|
||||
@ -138,8 +156,8 @@ diff -up sap-hana-ha/srHook/susChkSrv.py.patch100 sap-hana-ha/srHook/susChkSrv.p
|
||||
"provider_version": "1.0"}
|
||||
|
||||
diff -up sap-hana-ha/srHook/susCostOpt.py.patch100 sap-hana-ha/srHook/susCostOpt.py
|
||||
--- sap-hana-ha/srHook/susCostOpt.py.patch100 2024-07-08 14:39:04.000000000 +0200
|
||||
+++ sap-hana-ha/srHook/susCostOpt.py 2024-08-19 12:30:39.989351806 +0200
|
||||
--- sap-hana-ha/srHook/susCostOpt.py.patch100 2025-10-10 09:14:45.000000000 +0200
|
||||
+++ sap-hana-ha/srHook/susCostOpt.py 2025-10-31 10:49:48.095823583 +0100
|
||||
@@ -94,7 +94,7 @@ class susCostOpt(HADRBase):
|
||||
self.tracer.info(f"{self.__class__.__name__}.{method}() version {FHSRHOOKVERSION}")
|
||||
desc = ("postTakeover script to reset parameters to default or set parameters as"
|
||||
@ -150,8 +168,8 @@ diff -up sap-hana-ha/srHook/susCostOpt.py.patch100 sap-hana-ha/srHook/susCostOpt
|
||||
"provider_description": desc,
|
||||
"provider_version": "1.0"}
|
||||
diff -up sap-hana-ha/srHook/susHanaSrMultiTarget.py.to-be-integrated.patch100 sap-hana-ha/srHook/susHanaSrMultiTarget.py.to-be-integrated
|
||||
--- sap-hana-ha/srHook/susHanaSrMultiTarget.py.to-be-integrated.patch100 2024-07-08 14:39:04.000000000 +0200
|
||||
+++ sap-hana-ha/srHook/susHanaSrMultiTarget.py.to-be-integrated 2024-08-19 12:30:39.992351812 +0200
|
||||
--- sap-hana-ha/srHook/susHanaSrMultiTarget.py.to-be-integrated.patch100 2025-10-10 09:14:45.000000000 +0200
|
||||
+++ sap-hana-ha/srHook/susHanaSrMultiTarget.py.to-be-integrated 2025-10-31 10:49:48.098003113 +0100
|
||||
@@ -100,7 +100,7 @@ try:
|
||||
def about(self):
|
||||
method = "about"
|
||||
@ -162,8 +180,8 @@ diff -up sap-hana-ha/srHook/susHanaSrMultiTarget.py.to-be-integrated.patch100 sa
|
||||
"provider_description": "Inform Cluster about SR state",
|
||||
"provider_version": "1.0"}
|
||||
diff -up sap-hana-ha/srHook/susHanaSR.py.patch100 sap-hana-ha/srHook/susHanaSR.py
|
||||
--- sap-hana-ha/srHook/susHanaSR.py.patch100 2024-07-08 14:39:04.000000000 +0200
|
||||
+++ sap-hana-ha/srHook/susHanaSR.py 2024-08-19 12:30:39.990351808 +0200
|
||||
--- sap-hana-ha/srHook/susHanaSR.py.patch100 2025-10-10 09:14:45.000000000 +0200
|
||||
+++ sap-hana-ha/srHook/susHanaSR.py 2025-10-31 10:49:48.097101061 +0100
|
||||
@@ -17,9 +17,9 @@ import os
|
||||
|
||||
|
||||
@ -227,8 +245,8 @@ diff -up sap-hana-ha/srHook/susHanaSR.py.patch100 sap-hana-ha/srHook/susHanaSR.p
|
||||
f" SR status because of is_in_sync=True (reason={my_reason})")
|
||||
my_srs = ""
|
||||
diff -up sap-hana-ha/srHook/susTkOver.py.patch100 sap-hana-ha/srHook/susTkOver.py
|
||||
--- sap-hana-ha/srHook/susTkOver.py.patch100 2024-07-08 14:39:04.000000000 +0200
|
||||
+++ sap-hana-ha/srHook/susTkOver.py 2024-08-19 12:30:39.994351816 +0200
|
||||
--- sap-hana-ha/srHook/susTkOver.py.patch100 2025-10-10 09:14:45.000000000 +0200
|
||||
+++ sap-hana-ha/srHook/susTkOver.py 2025-10-31 10:49:48.099003115 +0100
|
||||
@@ -5,17 +5,17 @@
|
||||
# License: GNU General Public License (GPL)
|
||||
# Copyright: (c) 2022 SUSE LLC
|
||||
@ -1,6 +1,6 @@
|
||||
diff -up sap-hana-ha/tools/notes/query_hadr_providers.patch102 sap-hana-ha/tools/notes/query_hadr_providers
|
||||
--- sap-hana-ha/tools/notes/query_hadr_providers.patch102 2024-07-08 14:39:04.000000000 +0200
|
||||
+++ sap-hana-ha/tools/notes/query_hadr_providers 2024-08-19 12:30:40.049351923 +0200
|
||||
--- sap-hana-ha/tools/notes/query_hadr_providers.patch102 2025-10-10 09:14:45.000000000 +0200
|
||||
+++ sap-hana-ha/tools/notes/query_hadr_providers 2025-10-31 10:49:48.209385734 +0100
|
||||
@@ -1,7 +1,7 @@
|
||||
hdbsql -U TESTER 'select * from M_HA_DR_PROVIDERS
|
||||
|
||||
@ -12,8 +12,8 @@ diff -up sap-hana-ha/tools/notes/query_hadr_providers.patch102 sap-hana-ha/tools
|
||||
# 2 rows selected (overall time 3161 usec; server time 329 usec)
|
||||
|
||||
diff -up sap-hana-ha/tools/SAPHanaSR-monitor-legacy.patch102 sap-hana-ha/tools/SAPHanaSR-monitor-legacy
|
||||
--- sap-hana-ha/tools/SAPHanaSR-monitor-legacy.patch102 2024-07-08 14:39:04.000000000 +0200
|
||||
+++ sap-hana-ha/tools/SAPHanaSR-monitor-legacy 2024-08-19 12:30:40.048351921 +0200
|
||||
--- sap-hana-ha/tools/SAPHanaSR-monitor-legacy.patch102 2025-10-10 09:14:45.000000000 +0200
|
||||
+++ sap-hana-ha/tools/SAPHanaSR-monitor-legacy 2025-10-31 10:49:48.204003310 +0100
|
||||
@@ -14,7 +14,7 @@ use Sys::Syslog;
|
||||
use Sys::Hostname;
|
||||
use File::Path;
|
||||
@ -24,8 +24,8 @@ diff -up sap-hana-ha/tools/SAPHanaSR-monitor-legacy.patch102 sap-hana-ha/tools/S
|
||||
use SAPHanaSRTools;
|
||||
|
||||
diff -up sap-hana-ha/tools/SAPHanaSR-replay-archive-legacy.patch102 sap-hana-ha/tools/SAPHanaSR-replay-archive-legacy
|
||||
--- sap-hana-ha/tools/SAPHanaSR-replay-archive-legacy.patch102 2024-07-08 14:39:04.000000000 +0200
|
||||
+++ sap-hana-ha/tools/SAPHanaSR-replay-archive-legacy 2024-08-19 12:30:40.048351921 +0200
|
||||
--- sap-hana-ha/tools/SAPHanaSR-replay-archive-legacy.patch102 2025-10-10 09:14:45.000000000 +0200
|
||||
+++ sap-hana-ha/tools/SAPHanaSR-replay-archive-legacy 2025-10-31 10:49:48.205956017 +0100
|
||||
@@ -179,7 +179,7 @@ if [ -n "$outDir" ]; then
|
||||
mkdir -p "$outDir"
|
||||
case "$format" in
|
||||
@ -36,8 +36,8 @@ diff -up sap-hana-ha/tools/SAPHanaSR-replay-archive-legacy.patch102 sap-hana-ha/
|
||||
esac
|
||||
outNr=0
|
||||
diff -up sap-hana-ha/tools/SAPHanaSR-replay-archive.patch102 sap-hana-ha/tools/SAPHanaSR-replay-archive
|
||||
--- sap-hana-ha/tools/SAPHanaSR-replay-archive.patch102 2024-07-08 14:39:04.000000000 +0200
|
||||
+++ sap-hana-ha/tools/SAPHanaSR-replay-archive 2024-08-19 12:30:40.048351921 +0200
|
||||
--- sap-hana-ha/tools/SAPHanaSR-replay-archive.patch102 2025-10-10 09:14:45.000000000 +0200
|
||||
+++ sap-hana-ha/tools/SAPHanaSR-replay-archive 2025-10-31 10:49:48.205003312 +0100
|
||||
@@ -24,7 +24,7 @@ import os
|
||||
import re
|
||||
import sys
|
||||
@ -48,8 +48,8 @@ diff -up sap-hana-ha/tools/SAPHanaSR-replay-archive.patch102 sap-hana-ha/tools/S
|
||||
# pylint: enable=wrong-import-position
|
||||
# pylint: enable=unused-import
|
||||
diff -up sap-hana-ha/tools/SAPHanaSR-showAttr-legacy.patch102 sap-hana-ha/tools/SAPHanaSR-showAttr-legacy
|
||||
--- sap-hana-ha/tools/SAPHanaSR-showAttr-legacy.patch102 2024-07-08 14:39:04.000000000 +0200
|
||||
+++ sap-hana-ha/tools/SAPHanaSR-showAttr-legacy 2024-08-19 12:30:40.049351923 +0200
|
||||
--- sap-hana-ha/tools/SAPHanaSR-showAttr-legacy.patch102 2025-10-10 09:14:45.000000000 +0200
|
||||
+++ sap-hana-ha/tools/SAPHanaSR-showAttr-legacy 2025-10-31 10:49:48.207047244 +0100
|
||||
@@ -17,7 +17,7 @@ use Sys::Syslog;
|
||||
use Sys::Hostname;
|
||||
use File::Path;
|
||||
@ -60,11 +60,11 @@ diff -up sap-hana-ha/tools/SAPHanaSR-showAttr-legacy.patch102 sap-hana-ha/tools/
|
||||
use SAPHanaSRTools;
|
||||
|
||||
diff -up sap-hana-ha/tools/SAPHanaSR-showAttr.patch102 sap-hana-ha/tools/SAPHanaSR-showAttr
|
||||
--- sap-hana-ha/tools/SAPHanaSR-showAttr.patch102 2024-07-08 14:39:04.000000000 +0200
|
||||
+++ sap-hana-ha/tools/SAPHanaSR-showAttr 2024-08-19 12:30:40.048351921 +0200
|
||||
@@ -23,7 +23,7 @@ import os
|
||||
import re
|
||||
--- sap-hana-ha/tools/SAPHanaSR-showAttr.patch102 2025-10-10 09:14:45.000000000 +0200
|
||||
+++ sap-hana-ha/tools/SAPHanaSR-showAttr 2025-10-31 10:49:48.206466644 +0100
|
||||
@@ -24,7 +24,7 @@ import re
|
||||
import sys
|
||||
import datetime
|
||||
from dateutil import parser as dateutil_parser
|
||||
-sys.path.insert(1, '/usr/lib/SAPHanaSR-angi')
|
||||
+sys.path.insert(1, '/usr/lib/sap-hana-ha')
|
||||
@ -72,8 +72,8 @@ diff -up sap-hana-ha/tools/SAPHanaSR-showAttr.patch102 sap-hana-ha/tools/SAPHana
|
||||
# pylint: enable=wrong-import-position
|
||||
# pylint: enable=unused-import
|
||||
diff -up sap-hana-ha/tools/SAPHanaSR-upgrade-to-angi-demo.patch102 sap-hana-ha/tools/SAPHanaSR-upgrade-to-angi-demo
|
||||
--- sap-hana-ha/tools/SAPHanaSR-upgrade-to-angi-demo.patch102 2024-07-08 14:39:04.000000000 +0200
|
||||
+++ sap-hana-ha/tools/SAPHanaSR-upgrade-to-angi-demo 2024-08-19 12:30:40.049351923 +0200
|
||||
--- sap-hana-ha/tools/SAPHanaSR-upgrade-to-angi-demo.patch102 2025-10-10 09:14:45.000000000 +0200
|
||||
+++ sap-hana-ha/tools/SAPHanaSR-upgrade-to-angi-demo 2025-10-31 10:49:48.208003317 +0100
|
||||
@@ -20,7 +20,7 @@ TMP=/run/"$EXE"."$RANDOM"
|
||||
TIMEST=$(date +%s)
|
||||
ALL_RC=0
|
||||
@ -83,16 +83,16 @@ diff -up sap-hana-ha/tools/SAPHanaSR-upgrade-to-angi-demo.patch102 sap-hana-ha/t
|
||||
CIB_MSTTMP_ANG="#
|
||||
primitive rsc_SAPHanaCon_@@sid@@_HDB@@ino@@ ocf:suse:SAPHanaController \
|
||||
op start interval=0 timeout=3600 \
|
||||
@@ -80,7 +80,7 @@ function init-variables() {
|
||||
cibadmin -Ql > "$BAKDIR"/cib.xml || exit 1
|
||||
@@ -81,7 +81,7 @@ function init-variables() {
|
||||
SCRIPT=/root/bin/"$EXE"
|
||||
RPMOLD="SAPHanaSR"
|
||||
RPMDOC="SAPHanaSR-doc"
|
||||
- RPMNEW="SAPHanaSR-angi"
|
||||
+ RPMNEW="sap-hana-ha"
|
||||
SID=$(/usr/sap/hostctrl/exe/saphostctrl -function ListInstances |\
|
||||
awk '{print $4}')
|
||||
INO=$(/usr/sap/hostctrl/exe/saphostctrl -function ListInstances |\
|
||||
@@ -246,7 +246,7 @@ function del-srhook-local-classic() {
|
||||
@@ -247,7 +247,7 @@ function del-srhook-local-classic() {
|
||||
[ $DRYRUN = no ] && grep "^\[ha_dr_provider_" $GLBINI
|
||||
echo
|
||||
grep "^\[ha_dr_provider_" $GLBINI |
|
||||
@ -101,7 +101,7 @@ diff -up sap-hana-ha/tools/SAPHanaSR-upgrade-to-angi-demo.patch102 sap-hana-ha/t
|
||||
while read; do
|
||||
P=${REPLY:15}
|
||||
echo "su - $sidadm -c \"/usr/sbin/SAPHanaSR-manageProvider --sid=$SID --show --provider=$P\" > $TMP.global.ini.$P"
|
||||
@@ -284,9 +284,9 @@ function add-srhook-local-angi() {
|
||||
@@ -285,9 +285,9 @@ function add-srhook-local-angi() {
|
||||
EXE=$(basename $0)
|
||||
source /run/$EXE.variables
|
||||
[ -z $sid ] && sid=${SID,,}
|
||||
@ -114,7 +114,7 @@ diff -up sap-hana-ha/tools/SAPHanaSR-upgrade-to-angi-demo.patch102 sap-hana-ha/t
|
||||
done
|
||||
echo "su - $sidadm -c \"hdbnsutil -reloadHADRProviders\""
|
||||
[ $DRYRUN = no ] && su - $sidadm -c "hdbnsutil -reloadHADRProviders"
|
||||
@@ -294,7 +294,7 @@ function add-srhook-local-angi() {
|
||||
@@ -295,7 +295,7 @@ function add-srhook-local-angi() {
|
||||
[ $DRYRUN = no ] && grep -A2 "^\[ha_dr_provider_" $GLBINI
|
||||
echo
|
||||
grep "^\[ha_dr_provider_" $GLBINI |
|
||||
@ -123,7 +123,7 @@ diff -up sap-hana-ha/tools/SAPHanaSR-upgrade-to-angi-demo.patch102 sap-hana-ha/t
|
||||
while read; do
|
||||
P=${REPLY:15}
|
||||
echo "su - $sidadm -c \"/usr/bin/SAPHanaSR-manageProvider --sid=$SID --show --provider=${P}\""
|
||||
@@ -452,7 +452,7 @@ function f_install-rpm-angi() {
|
||||
@@ -453,7 +453,7 @@ function f_install-rpm-angi() {
|
||||
echo "crm cluster run \"zypper --non-interactive in -l -f -y '${RPMNEW}'\""
|
||||
[ $DRYRUN = no ] && crm cluster run "zypper --non-interactive in \
|
||||
-l -f -y '${RPMNEW}'"
|
||||
@ -13,7 +13,8 @@
|
||||
#
|
||||
# Use a specified version as HEAD if needed, e.g. "v4.14.0"
|
||||
#
|
||||
# # Source0:
|
||||
# # Source0: ClusterLabs-resource-agents
|
||||
#
|
||||
# git checkout <version tag>
|
||||
# TAG=$(git log --pretty="format:%h" -n 1)
|
||||
# distdir="ClusterLabs-resource-agents-${TAG}"
|
||||
@ -21,23 +22,35 @@
|
||||
# rm -rf $TARFILE $distdir
|
||||
# git archive --prefix=$distdir/ HEAD | gzip > $TARFILE
|
||||
#
|
||||
# # Source1:
|
||||
# # Source1: SAP resource
|
||||
#
|
||||
# 1) The script to generate a new source file from the SAPHanaSR
|
||||
# upstream git repo.
|
||||
#
|
||||
# git switch main
|
||||
# TAG=$(git log --pretty="format:%h" -n 1)
|
||||
# distdir="sap-hana-ha-${TAG}"
|
||||
# TARFILE="${distdir}.tar.gz"
|
||||
# rm -rf $TARFILE $distdir
|
||||
# git archive --prefix=$distdir/ HEAD | gzip > $TARFILE
|
||||
# cd ~/<git path>/SAPHanaSR/
|
||||
# git switch main
|
||||
# TAG=$(git log --pretty="format:%h" -n 1)
|
||||
# distdir="sap-hana-ha-${TAG}"
|
||||
# TARFILE="${distdir}.tar.gz"
|
||||
# rm -rf $TARFILE $distdir
|
||||
# git archive --prefix=$distdir/ HEAD | gzip > $TARFILE
|
||||
# cp $TARFILE ~/<package path>/
|
||||
#
|
||||
# 2) Update sources with pattern replacements.
|
||||
# Run ONCE and include the patches. Only re-run if patch conflictcs
|
||||
# Run ONCE and include the patches. Only re-run if patch conflicts
|
||||
# appeared and were solved.
|
||||
#
|
||||
# sh -x ./create-rename-patches.sh
|
||||
# #%%autopatch... to disable it for a clean unpacked source
|
||||
# centpkg prep
|
||||
# cd sap-hana-ha-<build>/Clusterlabs-...<tag>
|
||||
# sh -x ../../create-rename-patches.sh
|
||||
# cp patterns-*.patch ../../
|
||||
# # enable autopatch again
|
||||
#
|
||||
# 3) Verify that the patches can be applied in a clean source.
|
||||
#
|
||||
# rm -rf sap-hana-ha-<build>
|
||||
# centpkg prep
|
||||
#
|
||||
# Always carefully review the results of the patches, there is no
|
||||
# automatic check elsewhere!
|
||||
@ -47,7 +60,7 @@
|
||||
|
||||
# Use %%{name}
|
||||
# %%global name sap-hana-ha
|
||||
%global saphana_hash 87a5781
|
||||
%global saphana_hash 919eda64
|
||||
|
||||
# Whether this platform defaults to using systemd as an init system
|
||||
# (needs to be evaluated prior to BuildRequires being enumerated and
|
||||
@ -71,17 +84,20 @@
|
||||
|
||||
Name: sap-hana-ha
|
||||
Summary: Cluster resource HA for SAP HANA in System Replication
|
||||
Version: 1.2.8
|
||||
Release: 3%{?rcver:%{rcver}}%{?numcomm:.%{numcomm}}%{?alphatag:.%{alphatag}}%{?dirty:.%{dirty}}%{?dist}
|
||||
Version: 1.2.12
|
||||
Release: 1%{?rcver:%{rcver}}%{?numcomm:.%{numcomm}}%{?alphatag:.%{alphatag}}%{?dirty:.%{dirty}}%{?dist}
|
||||
License: GPLv2+
|
||||
URL: https://github.com/SUSE/SAPHanaSR
|
||||
Source0: %{upstream_prefix}-%{upstream_version}.tar.gz
|
||||
Source1: %{name}-%{saphana_hash}.tar.gz
|
||||
# Unpackaged source, just to make sure centpkg keeps it.
|
||||
# Unpackaged source, but we need it for the pattern replacement patch creation.
|
||||
Source2: create-rename-patches.sh
|
||||
|
||||
# Patches that will always be needed.
|
||||
# Other patches: handle conflicts if diff lines overlap
|
||||
# Upstream PR: https://github.com/SUSE/SAPHanaSR/pull/291
|
||||
Patch01: 0001-feat-simplified-fencing-and-site-lookup.patch
|
||||
|
||||
# Patches that will always be needed for fixing some names and patterns
|
||||
# that are Suse specific in the upstream source.
|
||||
Patch100: patterns-srHook-files.patch
|
||||
Patch101: patterns-ra-files.patch
|
||||
Patch102: patterns-tools-files.patch
|
||||
@ -136,15 +152,18 @@ environment.
|
||||
|
||||
|
||||
%prep
|
||||
# Unpack the Clusterlabs source
|
||||
# Unpack the Clusterlabs source first. This is used during the build
|
||||
# to generate man pages from the agents automatically.
|
||||
%setup -q -n %{upstream_prefix}-%{upstream_version}
|
||||
%setup -q -T -D -a 1 -n %{upstream_prefix}-%{upstream_version}
|
||||
|
||||
# Rename the unpacked SAP dir to strip the suffix off.
|
||||
mv %{name}-%{saphana_hash} %{name}
|
||||
# Go into the SAP dir that contains our code.
|
||||
cd %{name}
|
||||
|
||||
# Apply the patches that fix some names and patterns
|
||||
%autopatch -p0
|
||||
# Apply patches.
|
||||
%autopatch -p1
|
||||
|
||||
# Fail if there are patterns found after patching.
|
||||
# Recreate the patches if the source files changed.
|
||||
@ -159,7 +178,7 @@ grep -r \
|
||||
-e "sushanasr" \
|
||||
-e "SAPHanaSR-angi" \
|
||||
-e "suse_SAPHanaFilesystem" \
|
||||
%{name}/tools/ %{name}/srHook/ %{name}/ra/ && {
|
||||
tools/ srHook/ ra/ && {
|
||||
echo -e "\v>>> CHECK FAILED: Patterns found after patching. Fix the patches.\v"
|
||||
exit 1
|
||||
} || echo "CHECK PASSED: No unpatched patterns found"
|
||||
@ -170,6 +189,9 @@ grep -r \
|
||||
### The files are moved temporarily to places, adjusted to work at compilation time,
|
||||
### but the package will use the files from their original path of the SAP package source.
|
||||
|
||||
# Leave the SAP dir
|
||||
cd ..
|
||||
|
||||
# Copy the agents and libs to the heartbeat dir for the ClusterLabs included processing.
|
||||
# Keep them in the original place! They are used for the package.
|
||||
cp %{name}/ra/SAP* heartbeat
|
||||
@ -274,8 +296,10 @@ install -m 0444 %{name}/srHook/global.ini_susChkSrv %{buildroot}/%{_datadir}/%{n
|
||||
|
||||
# Scripts for some add-on functionality.
|
||||
# saphana_sr_tools is a lib imported by SAPHanaSR-* python scripts.
|
||||
install -m 0555 %{name}/tools/SAPHanaSR-showAttr %{buildroot}%{_bindir}
|
||||
install -m 0444 %{name}/tools/saphana_sr_tools.py %{buildroot}%{_usr}/lib/%{name}
|
||||
install -m 0755 %{name}/alert/SAPHanaSR-alert-fencing %{buildroot}%{_bindir}
|
||||
install -m 0755 %{name}/tools/SAPHanaSR-hookHelper %{buildroot}%{_bindir}
|
||||
install -m 0755 %{name}/tools/SAPHanaSR-showAttr %{buildroot}%{_bindir}
|
||||
install -m 0644 %{name}/tools/saphana_sr_tools.py %{buildroot}%{_usr}/lib/%{name}
|
||||
|
||||
## tree fixup
|
||||
# remove docs (there is only one and they should come from doc sections in files)
|
||||
@ -308,19 +332,25 @@ rm -rf %{buildroot}/usr/share/doc/resource-agents
|
||||
%exclude /usr/src
|
||||
|
||||
%changelog
|
||||
* Fri Jan 17 2025 Janine Fuchs <jfuchs@redhat.com> - 1.2.8-3
|
||||
- Include man pages.
|
||||
* Fri Oct 31 2025 Janine Fuchs <jfuchs@redhat.com> - 1.2.12-1
|
||||
- Rebase to 1.2.12 with patch for simplified fencing features and site name lookup bugfix.
|
||||
|
||||
Resolves: RHEL-74289
|
||||
Resolves: RHEL-125009
|
||||
|
||||
* Tue Oct 29 2024 Troy Dawson <tdawson@redhat.com> - 1.2.8-2.1
|
||||
- Bump release for October 2024 mass rebuild:
|
||||
Resolves: RHEL-64018
|
||||
* Tue Jul 29 2025 Janine Fuchs <jfuchs@redhat.com> - 1.2.10-1
|
||||
- Rebase to 1.2.10 and include fencing scripts.
|
||||
|
||||
* Tue Aug 13 2024 Janine Fuchs <jfuchs@redhat.com> - 1.2.8-2
|
||||
- Add package to RHEL 10.
|
||||
Resolves: RHEL-104816
|
||||
|
||||
Resolves: RHEL-53598
|
||||
* Fri Jun 06 2025 Janine Fuchs <jfuchs@redhat.com> - 1.2.8-4
|
||||
- Fix dashes in hostname.
|
||||
|
||||
Resolves: RHEL-84349
|
||||
|
||||
* Mon Feb 03 2025 Janine Fuchs <jfuchs@redhat.com> - 1.2.8-3
|
||||
- Add package to RHEL 9.
|
||||
|
||||
Resolves: RHEL-77481
|
||||
|
||||
|
||||
# vim:set ai ts=2 sw=2 sts=2 et:
|
||||
2
sources
2
sources
@ -1,2 +0,0 @@
|
||||
SHA512 (ClusterLabs-resource-agents-a6ccb93a.tar.gz) = 3ea92f051f16efbd0845d193cc7d2e7d8e9f66ba8e2bbba3a7b8d093ceff3103f8077b93037067dee8962a7d5c1ad0a0b5642acbaf385b0619cef96f18928911
|
||||
SHA512 (sap-hana-ha-87a5781.tar.gz) = b772906a774b4eb0b29b2fafb289ecc410329eea7425e93814477a61a9d4b1a3971010d9eab7d38769555c2e66c29fb2e9df3117f11d43d8677537965966b07d
|
||||
Loading…
Reference in New Issue
Block a user