Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package resource-agents for openSUSE:Factory checked in at 2024-04-08 17:37:35 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/resource-agents (Old) and /work/SRC/openSUSE:Factory/.resource-agents.new.1905 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "resource-agents" Mon Apr 8 17:37:35 2024 rev:129 rq:1165659 version:4.13.0+git41.828c175c Changes: -------- --- /work/SRC/openSUSE:Factory/resource-agents/resource-agents.changes 2024-03-13 22:17:55.390825147 +0100 +++ /work/SRC/openSUSE:Factory/.resource-agents.new.1905/resource-agents.changes 2024-04-08 17:37:50.513718884 +0200 @@ -1,0 +2,14 @@ +Fri Apr 05 13:53:33 UTC 2024 - vark...@suse.com + +- Update to version 4.13.0+git41.828c175c: + * Fix: openstack-info: Ensure no newlines in openstack_ports + * nfsserver: fix "server scope" functionality for both potentially other dropins AND multiple ExecStart + * all agents: remove -S state/status that are either ignored, or give an error message in newer versions of Pacemaker + * portblock: accept numeric protocol from iptables + * spec: use /usr/sbin paths for Fedora 40+ + * Support IPv6 with Azure load balncer. Using the "TCP6-LISTENER" causes socat to listen in a dual-stack manner (bsc#1220997) + * Doc: Delay: Drop old comments + * Fix docker RA behavior when Docker isn't running + * galera: allow joiner to report non-Primary during initial IST + +------------------------------------------------------------------- Old: ---- resource-agents-4.13.0+git23.fa8a56f6.tar.xz New: ---- resource-agents-4.13.0+git41.828c175c.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ resource-agents.spec ++++++ --- /var/tmp/diff_new_pack.GAztQI/_old 2024-04-08 17:37:51.905770264 +0200 +++ /var/tmp/diff_new_pack.GAztQI/_new 2024-04-08 17:37:51.905770264 +0200 @@ -17,7 +17,7 @@ Name: resource-agents -Version: 4.13.0+git23.fa8a56f6 +Version: 4.13.0+git41.828c175c Release: 0 Summary: HA Reusable Cluster Resource Scripts License: GPL-2.0-only AND LGPL-2.1-or-later AND GPL-3.0-or-later ++++++ _servicedata ++++++ --- /var/tmp/diff_new_pack.GAztQI/_old 2024-04-08 17:37:51.953772036 +0200 +++ /var/tmp/diff_new_pack.GAztQI/_new 2024-04-08 17:37:51.957772183 +0200 @@ -1,7 +1,7 @@ <servicedata> <service name="tar_scm"> <param name="url">https://github.com/ClusterLabs/resource-agents.git</param> -<param name="changesrevision">09560af2a5cb3db08fe428906c0af76bf09594f0</param> +<param name="changesrevision">828c175c452f46ddb23192917504f60bcf010608</param> </service> </servicedata> (No newline at EOF) ++++++ resource-agents-4.13.0+git23.fa8a56f6.tar.xz -> resource-agents-4.13.0+git41.828c175c.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/resource-agents-4.13.0+git23.fa8a56f6/heartbeat/Delay new/resource-agents-4.13.0+git41.828c175c/heartbeat/Delay --- old/resource-agents-4.13.0+git23.fa8a56f6/heartbeat/Delay 2024-01-29 10:05:12.000000000 +0100 +++ new/resource-agents-4.13.0+git41.828c175c/heartbeat/Delay 2024-04-04 09:51:26.000000000 +0200 @@ -4,22 +4,9 @@ # Support: us...@clusterlabs.org # License: GNU General Public License (GPL) # -# This script is a test resource for introducing delay. +# This script is a resource for introducing a delay. # -# usage: $0 {start|stop|status|monitor|meta-data} -# -# OCF parameters are as below: -# OCF_RESKEY_startdelay -# OCF_RESKEY_stopdelay -# OCF_RESKEY_mondelay -# -# -# OCF_RESKEY_startdelay defaults to 20 (seconds) -# OCF_RESKEY_stopdelay defaults to $OCF_RESKEY_startdelay -# OCF_RESKEY_mondelay defaults to $OCF_RESKEY_startdelay -# -# -# This is really a test resource script. +# usage: $0 {start|stop|status|monitor|meta-data} # ####################################################################### @@ -54,7 +41,7 @@ <version>1.0</version> <longdesc lang="en"> -This script is a test resource for introducing delay. +This script is a resource for introducing a delay. </longdesc> <shortdesc lang="en">Waits for a defined timespan</shortdesc> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/resource-agents-4.13.0+git23.fa8a56f6/heartbeat/SysInfo.in new/resource-agents-4.13.0+git41.828c175c/heartbeat/SysInfo.in --- old/resource-agents-4.13.0+git23.fa8a56f6/heartbeat/SysInfo.in 2024-01-29 10:05:12.000000000 +0100 +++ new/resource-agents-4.13.0+git41.828c175c/heartbeat/SysInfo.in 2024-04-04 09:51:26.000000000 +0200 @@ -119,7 +119,7 @@ name=$1; shift value="$*" echo -e "$name:\t$value" - ${HA_SBIN_DIR}/attrd_updater ${OCF_RESKEY_delay} -S status -n $name -v "$value" + ${HA_SBIN_DIR}/attrd_updater ${OCF_RESKEY_delay} -n $name -v "$value" } SysInfoStats() { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/resource-agents-4.13.0+git23.fa8a56f6/heartbeat/azure-lb new/resource-agents-4.13.0+git41.828c175c/heartbeat/azure-lb --- old/resource-agents-4.13.0+git23.fa8a56f6/heartbeat/azure-lb 2024-01-29 10:05:12.000000000 +0100 +++ new/resource-agents-4.13.0+git41.828c175c/heartbeat/azure-lb 2024-04-04 09:51:26.000000000 +0200 @@ -114,7 +114,7 @@ cmd="$OCF_RESKEY_nc -l -k $OCF_RESKEY_port" if [ $( basename $OCF_RESKEY_nc ) = 'socat' ]; then #socat has different parameters - cmd="$OCF_RESKEY_nc -U TCP-LISTEN:$OCF_RESKEY_port,backlog=10,fork,reuseaddr /dev/null" + cmd="$OCF_RESKEY_nc -U TCP6-LISTEN:$OCF_RESKEY_port,backlog=10,fork,reuseaddr /dev/null" fi if ! lb_monitor; then ocf_log debug "Starting $process: $cmd" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/resource-agents-4.13.0+git23.fa8a56f6/heartbeat/docker new/resource-agents-4.13.0+git41.828c175c/heartbeat/docker --- old/resource-agents-4.13.0+git23.fa8a56f6/heartbeat/docker 2024-01-29 10:05:12.000000000 +0100 +++ new/resource-agents-4.13.0+git41.828c175c/heartbeat/docker 2024-04-04 09:51:26.000000000 +0200 @@ -293,8 +293,8 @@ VERSION_OUT=$(docker version) version_ret=$? if [ $version_ret -eq 1 ]; then - ocf_exit_reason "Docker service is in error state while checking for ${CONTAINER}, based on image, ${OCF_RESKEY_image}: ${VERSION_OUT}" - return $OCF_ERR_GENERIC + ocf_log err "Docker service is not running or in error state while checking for ${CONTAINER}, based on image, ${OCF_RESKEY_image}: ${VERSION_OUT}" + return $OCF_NOT_RUNNING fi container_exists diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/resource-agents-4.13.0+git23.fa8a56f6/heartbeat/galera.in new/resource-agents-4.13.0+git41.828c175c/heartbeat/galera.in --- old/resource-agents-4.13.0+git23.fa8a56f6/heartbeat/galera.in 2024-01-29 10:05:12.000000000 +0100 +++ new/resource-agents-4.13.0+git41.828c175c/heartbeat/galera.in 2024-04-04 09:51:26.000000000 +0200 @@ -822,6 +822,11 @@ return $rc fi + # At this point, the mysql pidfile is created on disk and the + # mysql server is reacheable via its UNIX socket. If we are a + # joiner, SST transfers (rsync) have finished, but an IST may + # still be requested or ongoing + galera_monitor rc=$? if [ $rc != $OCF_SUCCESS -a $rc != $OCF_RUNNING_MASTER ]; then @@ -835,12 +840,6 @@ return $OCF_ERR_GENERIC fi - is_primary - if [ $? -ne 0 ]; then - ocf_exit_reason "Failure. Master instance started, but is not in Primary mode." - return $OCF_ERR_GENERIC - fi - if ocf_is_true $bootstrap; then promote_everyone clear_bootstrap_node @@ -991,8 +990,18 @@ fi rc=$OCF_RUNNING_MASTER else - ocf_exit_reason "local node <${NODENAME}> is started, but not in primary mode. Unknown state." - rc=$OCF_ERR_GENERIC + # It seems that with recent galera (26.4+), a joiner that is + # connected to a Primary component and is preparing its IST + # request might still temporarily report its state as + # Non-Primary. Do not fail in this case as the promote + # operation will loop until the IST finishes or the promote + # times out. + if [ "$__OCF_ACTION" = "promote" ] && ! ocf_is_true $(is_bootstrap); then + ocf_log info "local node <${NODENAME}> is receiving a State Transfer." + else + ocf_exit_reason "local node <${NODENAME}> is started, but not in primary mode. Unknown state." + rc=$OCF_ERR_GENERIC + fi fi return $rc diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/resource-agents-4.13.0+git23.fa8a56f6/heartbeat/lxd-info.in new/resource-agents-4.13.0+git41.828c175c/heartbeat/lxd-info.in --- old/resource-agents-4.13.0+git23.fa8a56f6/heartbeat/lxd-info.in 2024-01-29 10:05:12.000000000 +0100 +++ new/resource-agents-4.13.0+git41.828c175c/heartbeat/lxd-info.in 2024-04-04 09:51:26.000000000 +0200 @@ -89,7 +89,7 @@ LXDInfoStats() { value=$(lxc list|grep -ci RUNNING) echo -e "lxd_containers:\t$value" - ${HA_SBIN_DIR}/attrd_updater ${OCF_RESKEY_delay} -S status -n lxd_containers -v $value + ${HA_SBIN_DIR}/attrd_updater ${OCF_RESKEY_delay} -n lxd_containers -v $value } LXDInfo_usage() { @@ -108,7 +108,7 @@ LXDInfo_stop() { rm -f $OCF_RESKEY_pidfile - ${HA_SBIN_DIR}/attrd_updater ${OCF_RESKEY_delay} -D -S state -n lxd_containers + ${HA_SBIN_DIR}/attrd_updater ${OCF_RESKEY_delay} -D -n lxd_containers exit $OCF_SUCCESS } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/resource-agents-4.13.0+git23.fa8a56f6/heartbeat/machine-info.in new/resource-agents-4.13.0+git41.828c175c/heartbeat/machine-info.in --- old/resource-agents-4.13.0+git23.fa8a56f6/heartbeat/machine-info.in 2024-01-29 10:05:12.000000000 +0100 +++ new/resource-agents-4.13.0+git41.828c175c/heartbeat/machine-info.in 2024-04-04 09:51:26.000000000 +0200 @@ -90,7 +90,7 @@ MachineInfoStats() { value=$(machinectl|awk '/machines listed/ {print $1}') echo -e "machines:\t$value" - ${HA_SBIN_DIR}/attrd_updater ${OCF_RESKEY_delay} -S status -n machines -v $value + ${HA_SBIN_DIR}/attrd_updater ${OCF_RESKEY_delay} -n machines -v $value } MachineInfo_usage() { @@ -109,7 +109,7 @@ MachineInfo_stop() { rm -f $OCF_RESKEY_pidfile - ${HA_SBIN_DIR}/attrd_updater ${OCF_RESKEY_delay} -D -S state -n machines + ${HA_SBIN_DIR}/attrd_updater ${OCF_RESKEY_delay} -D -n machines exit $OCF_SUCCESS } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/resource-agents-4.13.0+git23.fa8a56f6/heartbeat/nfsserver new/resource-agents-4.13.0+git41.828c175c/heartbeat/nfsserver --- old/resource-agents-4.13.0+git23.fa8a56f6/heartbeat/nfsserver 2024-01-29 10:05:12.000000000 +0100 +++ new/resource-agents-4.13.0+git41.828c175c/heartbeat/nfsserver 2024-04-04 09:51:26.000000000 +0200 @@ -711,8 +711,17 @@ test -d "$dir" || mkdir -p "$dir" test -e "$dropin" && rm -f "$dropin" - # NOTE: additional ExecStart= might exist in the drop-in files, eg. openSUSE - edited_exec_start=$(systemctl cat $svc | sed -ne "s#^ExecStart=\\([-+:!@]*\\)\\(.\+\\)#ExecStart=\\1/usr/bin/unshare --uts /bin/sh -c 'hostname \${NFS_SERVER_SCOPE}; exec \"\$@\"' -- \\2#p" | tail -1) + # NOTE: multiple ExecStart may exist, + # even additional `ExecStart=` to reset the list might exist in the drop-in files. + # We are interested in only the "currently relevant" set of ExecStart. + local unshare_uts_set_hostname='/usr/bin/unshare --uts /bin/sh -c '\''hostname ${NFS_SERVER_SCOPE}; exec "$@"'\'' -- ' + edited_exec_start=$(systemctl cat $svc \ + | sed -n \ + -e '/^ExecStart=/ H;' \ + -e '/^ExecStart=[[:space:]]*$/ {s/.*//;h};' \ + -e '${g;s/^\n//;p}' \ + | sed -e 's#^\(ExecStart=[-+:!@]*\)\(.\+\)#\1'"$unshare_uts_set_hostname"'\2#' + ) cat > "$dropin" <<___ [Service] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/resource-agents-4.13.0+git23.fa8a56f6/heartbeat/openstack-floating-ip new/resource-agents-4.13.0+git41.828c175c/heartbeat/openstack-floating-ip --- old/resource-agents-4.13.0+git23.fa8a56f6/heartbeat/openstack-floating-ip 2024-01-29 10:05:12.000000000 +0100 +++ new/resource-agents-4.13.0+git41.828c175c/heartbeat/openstack-floating-ip 2024-04-04 09:51:26.000000000 +0200 @@ -143,13 +143,13 @@ for port in $node_port_ids ; do if echo "$result" | grep -q $port ; then floating_ip=$(echo "$result" | awk '/floating_ip_address/ {print $2}') - ${HA_SBIN_DIR}/attrd_updater ${OCF_RESKEY_delay} -S status -n openstack_floating_ip -v $floating_ip + ${HA_SBIN_DIR}/attrd_updater ${OCF_RESKEY_delay} -n openstack_floating_ip -v $floating_ip return $OCF_SUCCESS fi done - ${HA_SBIN_DIR}/attrd_updater ${OCF_RESKEY_delay} -D -S state -n openstack_floating_ip + ${HA_SBIN_DIR}/attrd_updater ${OCF_RESKEY_delay} -D -n openstack_floating_ip ocf_log warn "$OCF_RESKEY_ip_id is not attached to any fixed address" return $OCF_NOT_RUNNING } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/resource-agents-4.13.0+git23.fa8a56f6/heartbeat/openstack-info.in new/resource-agents-4.13.0+git41.828c175c/heartbeat/openstack-info.in --- old/resource-agents-4.13.0+git23.fa8a56f6/heartbeat/openstack-info.in 2024-01-29 10:05:12.000000000 +0100 +++ new/resource-agents-4.13.0+git41.828c175c/heartbeat/openstack-info.in 2024-04-04 09:51:26.000000000 +0200 @@ -164,10 +164,12 @@ --format json \ --column fixed_ips \ ${port_id}") - subnet_id=$(echo "$subnet_result" | + subnet_ids=$(echo "$subnet_result" | grep -P '\"subnet_id\": \".*\",$' | grep -P -o '[0-9a-f]{8}-([0-9a-f]{4}-){3}[0-9a-f]{12}') - value="${value}${subnet_id}:${port_id}," + for subnet_id in $subnet_ids; do + value="${value}${subnet_id}:${port_id}," + done done value=${value%,} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/resource-agents-4.13.0+git23.fa8a56f6/heartbeat/openstack-virtual-ip new/resource-agents-4.13.0+git41.828c175c/heartbeat/openstack-virtual-ip --- old/resource-agents-4.13.0+git23.fa8a56f6/heartbeat/openstack-virtual-ip 2024-01-29 10:05:12.000000000 +0100 +++ new/resource-agents-4.13.0+git41.828c175c/heartbeat/openstack-virtual-ip 2024-04-04 09:51:26.000000000 +0200 @@ -137,12 +137,12 @@ --column allowed_address_pairs \ ${node_port_id}") if echo "$result" | grep -q "$OCF_RESKEY_ip"; then - ${HA_SBIN_DIR}/attrd_updater ${OCF_RESKEY_delay} -S status -n openstack_virtual_ip -v $OCF_RESKEY_ip + ${HA_SBIN_DIR}/attrd_updater ${OCF_RESKEY_delay} -n openstack_virtual_ip -v $OCF_RESKEY_ip return $OCF_SUCCESS fi - ${HA_SBIN_DIR}/attrd_updater ${OCF_RESKEY_delay} -D -S state -n openstack_virtual_ip + ${HA_SBIN_DIR}/attrd_updater ${OCF_RESKEY_delay} -D -n openstack_virtual_ip ocf_log warn "$OCF_RESKEY_ip is not attached to any fixed address" return $OCF_NOT_RUNNING } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/resource-agents-4.13.0+git23.fa8a56f6/heartbeat/portblock new/resource-agents-4.13.0+git41.828c175c/heartbeat/portblock --- old/resource-agents-4.13.0+git23.fa8a56f6/heartbeat/portblock 2024-01-29 10:05:12.000000000 +0100 +++ new/resource-agents-4.13.0+git41.828c175c/heartbeat/portblock 2024-04-04 09:51:26.000000000 +0200 @@ -266,7 +266,14 @@ local src=$3 local dst=$any fi - echo "^DROP${w}${1}${w}--${w}${src}${w}${dst}${w}multiport${w}${4}ports${w}${2}$" + # iptables 1.8.9 briefly broke the output format, returning the + # numeric protocol value instead of a string. Support both variants. + if [ "$1" = "tcp" ]; then + local prot="(tcp|6)" + else + local prot="(udp|17)" + fi + echo "^DROP${w}${prot}${w}--${w}${src}${w}${dst}${w}multiport${w}${4}ports${w}${2}$" } #chain_isactive {udp|tcp} portno,portno ip chain @@ -274,7 +281,7 @@ { [ "$4" = "OUTPUT" ] && ds="s" || ds="d" PAT=$(active_grep_pat "$1" "$2" "$3" "$ds") - $IPTABLES $wait -n -L "$4" | grep "$PAT" >/dev/null + $IPTABLES $wait -n -L "$4" | grep -qE "$PAT" } # netstat -tn and ss -Htn, split on whitespace and colon, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/resource-agents-4.13.0+git23.fa8a56f6/resource-agents.spec.in new/resource-agents-4.13.0+git41.828c175c/resource-agents.spec.in --- old/resource-agents-4.13.0+git23.fa8a56f6/resource-agents.spec.in 2024-01-29 10:05:12.000000000 +0100 +++ new/resource-agents-4.13.0+git41.828c175c/resource-agents.spec.in 2024-04-04 09:51:26.000000000 +0200 @@ -100,7 +100,7 @@ %endif # Filesystem / fs.sh / netfs.sh -%if 0%{?suse_version} +%if 0%{?fedora} > 39 || 0%{?suse_version} Requires: /usr/sbin/fsck %else Requires: /sbin/fsck @@ -141,9 +141,14 @@ Requires: /sbin/rdisc /usr/sbin/arping /bin/ping /bin/ping6 # nfsexport.sh +%if 0%{?fedora} > 39 +Requires: /usr/sbin/findfs +Requires: /usr/sbin/quotaon /usr/sbin/quotacheck +%else Requires: /sbin/findfs Requires: /sbin/quotaon /sbin/quotacheck %endif +%endif %description A set of scripts to interface with several services to operate in a