Hello community,
here is the log from the commit of package resource-agents for openSUSE:Factory
checked in at 2019-09-25 01:26:31
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/resource-agents (Old)
and /work/SRC/openSUSE:Factory/.resource-agents.new.7948 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "resource-agents"
Wed Sep 25 01:26:31 2019 rev:99 rq:731705 version:4.3.0+git161.00cb192d
Changes:
--------
--- /work/SRC/openSUSE:Factory/resource-agents/resource-agents.changes
2019-08-16 15:32:32.973927824 +0200
+++
/work/SRC/openSUSE:Factory/.resource-agents.new.7948/resource-agents.changes
2019-09-25 01:26:32.989733384 +0200
@@ -1,0 +2,24 @@
+Mon Sep 09 13:12:47 UTC 2019 - [email protected]
+
+- Update to version 4.3.0+git161.00cb192d:
+ * apache: correctly detect mod_status.so when statusurl is set
+ (bsc#1138281)
+ * Restore users/perms/policies even if starting in a single node mode
+ * spec: use %{?centos} as _version doesnt work on newer CentOS versions
+ * exportfs: doc clarification for clientspec format
+ * Fixup docker_stop condition on error
+ * Make the check for the docker daemon being up more robust
+ * Low: oracle-common: Delete the ORACLE_HOME check that is no longer needed
because it is checked first.
+ * Low: ora-common: Properly output message when sid parameter is invalid.
+ * spec: updates from Fedora
+ * spec: update to BR to libnet-devel for opensuse
+ * CI: "make rpm" fixes
+ * Route: dont fence node when parameters arent set
+ * requested changes applied.
+ * Added support for SSL replication
+ * [build] drop now unnecessary make distcheck options
+ * [build] allow systemd files to be installed in non-standard location
+ * [build] fix make distcheck by adding fallback OS dir to find docbook.xsl
+ * Don't call readlink on path if it does not exist
+
+-------------------------------------------------------------------
Old:
----
resource-agents-4.3.0+git131.7af8c368.tar.xz
New:
----
resource-agents-4.3.0+git161.00cb192d.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ resource-agents.spec ++++++
--- /var/tmp/diff_new_pack.HiyHMI/_old 2019-09-25 01:26:33.629733278 +0200
+++ /var/tmp/diff_new_pack.HiyHMI/_new 2019-09-25 01:26:33.633733277 +0200
@@ -17,7 +17,7 @@
Name: resource-agents
-Version: 4.3.0+git131.7af8c368
+Version: 4.3.0+git161.00cb192d
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
++++++ 0004-Revert-Low-build-Move-binaries-in-usr-lib-heartbeat-.patch ++++++
--- /var/tmp/diff_new_pack.HiyHMI/_old 2019-09-25 01:26:33.657733273 +0200
+++ /var/tmp/diff_new_pack.HiyHMI/_new 2019-09-25 01:26:33.657733273 +0200
@@ -42,15 +42,15 @@
index 78021f1d..cde87b15 100644
--- a/resource-agents.spec.in
+++ b/resource-agents.spec.in
-@@ -284,7 +284,7 @@ rm -rf %{buildroot}
+@@ -289,7 +289,7 @@
%dir %{_sysconfdir}/ha.d
%{_sysconfdir}/ha.d/shellfuncs
-
+
-%{_libexecdir}/heartbeat
+%{_libdir}/heartbeat
-
+
+ %if %{with rgmanager}
%post -n resource-agents
- if [ $1 = 2 ]; then
diff --git a/tools/Makefile.am b/tools/Makefile.am
index 1186967c..71292bf3 100644
--- a/tools/Makefile.am
++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.HiyHMI/_old 2019-09-25 01:26:33.701733266 +0200
+++ /var/tmp/diff_new_pack.HiyHMI/_new 2019-09-25 01:26:33.701733266 +0200
@@ -1,6 +1,6 @@
<servicedata>
<service name="tar_scm">
<param name="url">git://github.com/ClusterLabs/resource-agents.git</param>
-<param name="changesrevision">db6d12f4b7b10e214526512abe35307270f81c03</param>
+<param name="changesrevision">00cb192d4b27402093265da2b8fe4a87671589a6</param>
</service>
</servicedata>
\ No newline at end of file
++++++ resource-agents-4.3.0+git131.7af8c368.tar.xz ->
resource-agents-4.3.0+git161.00cb192d.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/resource-agents-4.3.0+git131.7af8c368/configure.ac
new/resource-agents-4.3.0+git161.00cb192d/configure.ac
--- old/resource-agents-4.3.0+git131.7af8c368/configure.ac 2019-08-12
10:46:28.000000000 +0200
+++ new/resource-agents-4.3.0+git161.00cb192d/configure.ac 2019-09-09
14:05:39.000000000 +0200
@@ -74,6 +74,11 @@
[AC_MSG_ERROR([systemd support requested but pkg-config unable
to query systemd package])])
with_systemdsystemunitdir=no],
[with_systemdsystemunitdir="$def_systemdsystemunitdir"])])
+if test "x$with_systemdsystemunitdir" != "xno" && \
+ test "x${prefix}" != "xNONE" && \
+ test "x${prefix}" != "x/usr"; then
+ with_systemdsystemunitdir="${prefix}/$with_systemdsystemunitdir"
+fi
AS_IF([test "x$with_systemdsystemunitdir" != "xno"],
[AC_SUBST([systemdsystemunitdir], [$with_systemdsystemunitdir])])
AM_CONDITIONAL([HAVE_SYSTEMD], [test "x$with_systemdsystemunitdir" != "xno"])
@@ -81,6 +86,11 @@
AC_ARG_WITH([systemdtmpfilesdir],
AS_HELP_STRING([--with-systemdtmpfilesdir=DIR], [Directory for systemd
tmp files]),
[], [with_systemdtmpfilesdir=$($PKGCONFIG --variable=tmpfilesdir
systemd)])
+ if test "x$with_systemdtmpfilesdir" != xno && \
+ test "x${prefix}" != "xNONE" && \
+ test "x${prefix}" != "x/usr"; then
+ with_systemdtmpfilesdir="${prefix}/$with_systemdtmpfilesdir"
+ fi
if test "x$with_systemdtmpfilesdir" != xno; then
AC_SUBST([systemdtmpfilesdir], [$with_systemdtmpfilesdir])
fi
@@ -579,6 +589,12 @@
if test x"${STYLESHEET_PREFIX}" = x""; then
DIRS=$(find "${datadir}" -name $(basename $(dirname
${DOCBOOK_XSL_PATH})) \
-type d | LC_ALL=C sort)
+ if test x"${DIRS}" = x""; then
+ # when datadir is not standard OS path, we cannot find docbook.xsl
+ # use standard OS path as backup
+ DIRS=$(find "/usr/share" -name $(basename $(dirname
${DOCBOOK_XSL_PATH})) \
+ -type d | LC_ALL=C sort)
+ fi
XSLT=$(basename ${DOCBOOK_XSL_PATH})
for d in ${DIRS}; do
if test -f "${d}/${XSLT}"; then
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/resource-agents-4.3.0+git131.7af8c368/heartbeat/Filesystem
new/resource-agents-4.3.0+git161.00cb192d/heartbeat/Filesystem
--- old/resource-agents-4.3.0+git131.7af8c368/heartbeat/Filesystem
2019-08-12 10:46:28.000000000 +0200
+++ new/resource-agents-4.3.0+git161.00cb192d/heartbeat/Filesystem
2019-09-09 14:05:39.000000000 +0200
@@ -858,10 +858,14 @@
else
MOUNTPOINT=$(echo $OCF_RESKEY_directory | sed 's/\/*$//')
: ${MOUNTPOINT:=/}
- CANONICALIZED_MOUNTPOINT=$(readlink -f "$MOUNTPOINT")
- if [ $? -ne 0 ]; then
- ocf_exit_reason "Could not canonicalize $MOUNTPOINT because
readlink failed"
- exit $OCF_ERR_GENERIC
+ if [ -e "$MOUNTPOINT" ] ; then
+ CANONICALIZED_MOUNTPOINT=$(readlink -f "$MOUNTPOINT")
+ if [ $? -ne 0 ]; then
+ ocf_exit_reason "Could not canonicalize $MOUNTPOINT
because readlink failed"
+ exit $OCF_ERR_GENERIC
+ fi
+ else
+ CANONICALIZED_MOUNTPOINT="$MOUNTPOINT"
fi
# At this stage, $MOUNTPOINT does not contain trailing "/" unless it is
"/"
# TODO: / mounted via Filesystem sounds dangerous. On stop, we'll
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/resource-agents-4.3.0+git131.7af8c368/heartbeat/Route
new/resource-agents-4.3.0+git161.00cb192d/heartbeat/Route
--- old/resource-agents-4.3.0+git131.7af8c368/heartbeat/Route 2019-08-12
10:46:28.000000000 +0200
+++ new/resource-agents-4.3.0+git161.00cb192d/heartbeat/Route 2019-09-09
14:05:39.000000000 +0200
@@ -249,18 +249,18 @@
if [ "${OCF_RESKEY_CRM_meta_clone}" ]; then
if [ "${OCF_RESKEY_CRM_meta_clone_node_max}" != 1 ]; then
ocf_exit_reason "Misconfigured clone parameters. Must set meta
attribute \"clone_node_max\" to 1, got ${OCF_RESKEY_CRM_meta_clone_node_max}."
- return $OCF_ERR_ARGS
+ return $OCF_ERR_CONFIGURED
fi
fi
# Did we get a destination?
if [ -z "${OCF_RESKEY_destination}" ]; then
ocf_exit_reason "Missing required parameter \"destination\"."
- return $OCF_ERR_ARGS
+ return $OCF_ERR_CONFIGURED
fi
# Did we get either a device or a gateway address?
if [ -z "${OCF_RESKEY_device}" -a -z "${OCF_RESKEY_gateway}" ]; then
ocf_exit_reason "Must specify either \"device\", or \"gateway\", or
both."
- return $OCF_ERR_ARGS
+ return $OCF_ERR_CONFIGURED
fi
# If a device has been configured, is it available on this system?
if [ -n "${OCF_RESKEY_device}" ]; then
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/resource-agents-4.3.0+git131.7af8c368/heartbeat/apache
new/resource-agents-4.3.0+git161.00cb192d/heartbeat/apache
--- old/resource-agents-4.3.0+git131.7af8c368/heartbeat/apache 2019-08-12
10:46:28.000000000 +0200
+++ new/resource-agents-4.3.0+git161.00cb192d/heartbeat/apache 2019-09-09
14:05:39.000000000 +0200
@@ -204,7 +204,7 @@
then
# load module only if module exists
apache_mod_status="/usr/lib64/apache2-prefork/mod_status.so"
- if [ -f $apache_mod_status ]; then
+ if [ -e $apache_mod_status ]; then
LOAD_STATUS_MODULE="LoadModule status_module
$apache_mod_status"
# append to apache options the module so we can load it
for suse only systems.
HTTPDOPTS="$HTTPDOPTS -C $LOAD_STATUS_MODULE"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/resource-agents-4.3.0+git131.7af8c368/heartbeat/docker
new/resource-agents-4.3.0+git161.00cb192d/heartbeat/docker
--- old/resource-agents-4.3.0+git131.7af8c368/heartbeat/docker 2019-08-12
10:46:28.000000000 +0200
+++ new/resource-agents-4.3.0+git161.00cb192d/heartbeat/docker 2019-09-09
14:05:39.000000000 +0200
@@ -36,10 +36,8 @@
# Parameter defaults
OCF_RESKEY_reuse_default="0"
-OCF_RESKEY_daemon_pidfile_default="/var/run/docker.pid"
: ${OCF_RESKEY_reuse=${OCF_RESKEY_reuse_default}}
-: ${OCF_RESKEY_daemon_pidfile=${OCF_RESKEY_daemon_pidfile_default}}
#######################################################################
@@ -184,15 +182,6 @@
<content type="boolean"/>
</parameter>
-<parameter name="daemon_pidfile" required="0" unique="0">
-<longdesc lang="en">
-The RA will report not running status on hosts where the docker daemon
-is not running.
-</longdesc>
-<shortdesc lang="en">Name of the docker daemon pid file</shortdesc>
-<content type="string" default="${OCF_RESKEY_daemon_pidfile_default}"/>
-</parameter>
-
</parameters>
<actions>
@@ -299,9 +288,13 @@
return $OCF_ERR_INSTALLED
fi
- if [ ! -e "$OCF_RESKEY_daemon_pidfile" ]; then
- ocf_log err "docker daemon is not running, pid file
$OCF_RESKEY_daemon_pidfile not exists"
- return $OCF_NOT_RUNNING
+
+ # let's first check if the daemon is up and running.
+ 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
fi
container_exists
@@ -457,9 +450,12 @@
{
local timeout=60
docker_simple_status
- if [ $? -eq $OCF_NOT_RUNNING ]; then
+ ret=$?
+ if [ $ret -eq $OCF_NOT_RUNNING ]; then
remove_container
return $OCF_SUCCESS
+ elif [ $ret -eq $OCF_ERR_GENERIC ]; then
+ return $OCF_ERR_GENERIC
fi
if [ -n "$OCF_RESKEY_CRM_meta_timeout" ]; then
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/resource-agents-4.3.0+git131.7af8c368/heartbeat/exportfs
new/resource-agents-4.3.0+git161.00cb192d/heartbeat/exportfs
--- old/resource-agents-4.3.0+git131.7af8c368/heartbeat/exportfs
2019-08-12 10:46:28.000000000 +0200
+++ new/resource-agents-4.3.0+git161.00cb192d/heartbeat/exportfs
2019-09-09 14:05:39.000000000 +0200
@@ -47,6 +47,12 @@
<longdesc lang="en">
The client specification allowing remote machines to mount the directory
(or directories) over NFS.
+
+Note: it follows the format defined in "man exportfs". For example, in
+the use case to export the directory(-ies) for multiple subnets, please
+do config a dedicated primitive for each subnet CIDR ip address,
+and do not attempt to use multiple CIDR ip addresses in a space
+seperated list, like in /etc/exports.
</longdesc>
<shortdesc lang="en">
Client ACL.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/resource-agents-4.3.0+git131.7af8c368/heartbeat/mysql
new/resource-agents-4.3.0+git161.00cb192d/heartbeat/mysql
--- old/resource-agents-4.3.0+git131.7af8c368/heartbeat/mysql 2019-08-12
10:46:28.000000000 +0200
+++ new/resource-agents-4.3.0+git161.00cb192d/heartbeat/mysql 2019-09-09
14:05:39.000000000 +0200
@@ -86,11 +86,11 @@
be setup to use notifications. Set 'notify=true' in the metadata
attributes when defining a MySQL master/slave instance.
-While managing replication, the default behavior is to use uname -n
-values in the change master to command. Other IPs can be specified
+While managing replication, the default behavior is to use uname -n
+values in the change master to command. Other IPs can be specified
manually by adding a node attribute \${INSTANCE_ATTR_NAME}_mysql_master_IP
-giving the IP to use for replication. For example, if the mysql primitive
-you are using is p_mysql, the attribute to set will be
+giving the IP to use for replication. For example, if the mysql primitive
+you are using is p_mysql, the attribute to set will be
p_mysql_mysql_master_IP.
</longdesc>
<shortdesc lang="en">Manages a MySQL database instance</shortdesc>
@@ -239,6 +239,30 @@
<content type="string" default="${OCF_RESKEY_replication_port_default}" />
</parameter>
+<parameter name="replication_master_ssl_ca" unique="0" required="0">
+<longdesc lang="en">
+The SSL CA certificate to be used for replication over SSL.
+</longdesc>
+<shortdesc lang="en">MySQL replication SSL CA certificate</shortdesc>
+<content type="string"
default="${OCF_RESKEY_replication_master_ssl_ca_default}" />
+</parameter>
+
+<parameter name="replication_master_ssl_cert" unique="0" required="0">
+<longdesc lang="en">
+The SSL CA certificate to be used for replication over SSL.
+</longdesc>
+<shortdesc lang="en">MySQL replication SSL certificate</shortdesc>
+<content type="string"
default="${OCF_RESKEY_replication_master_ssl_cert_default}" />
+</parameter>
+
+<parameter name="replication_master_ssl_key" unique="0" required="0">
+<longdesc lang="en">
+The SSL certificate key to be used for replication over SSL.
+</longdesc>
+<shortdesc lang="en">MySQL replication SSL certificate key</shortdesc>
+<content type="string"
default="${OCF_RESKEY_replication_master_ssl_key_default}" />
+</parameter>
+
<parameter name="max_slave_lag" unique="0" required="0">
<longdesc lang="en">
The maximum number of seconds a replication slave is allowed to lag
@@ -344,14 +368,14 @@
if ! ocf_is_ms || ! get_read_only; then
return 1
fi
-
+
get_slave_info
rc=$?
rm -f $tmpfile
if [ $rc -eq 0 ]; then
# show slave status is not empty
- # Is there a master_log_file defined? (master_log_file is deleted
+ # Is there a master_log_file defined? (master_log_file is deleted
# by reset slave
if [ "$master_log_file" ]; then
return 0
@@ -363,7 +387,7 @@
# replication slave
return 1
fi
-
+
}
parse_slave_info() {
@@ -374,7 +398,7 @@
get_slave_info() {
# Warning: this sets $tmpfile and LEAVE this file! You must delete it
after use!
local mysql_options
-
+
if [ "$master_log_file" -a "$master_host" ]; then
# variables are already defined, get_slave_info has been run before
return $OCF_SUCCESS
@@ -518,7 +542,7 @@
set_master() {
local new_master master_log_file master_log_pos
- local master_params
+ local master_params master_ssl_params
new_master=`$CRM_ATTR_REPL_INFO --query -q | cut -d'|' -f1`
@@ -544,14 +568,20 @@
# Informs the MySQL server of the master to replicate
# from. Accepts one mandatory argument which must contain the host
# name of the new master host. The master must either be unchanged
- # from the laste master the slave replicated from, or freshly
+ # from the last master the slave replicated from, or freshly
# reset with RESET MASTER.
+ if [ -n "$OCF_RESKEY_replication_master_ssl_ca" ] && [ -n
"$OCF_RESKEY_replication_master_ssl_cert" ] && [ -n
"$OCF_RESKEY_replication_master_ssl_key" ]; then
+ master_ssl_params=", MASTER_SSL=1, \
+ MASTER_SSL_CA='$OCF_RESKEY_replication_master_ssl_ca', \
+ MASTER_SSL_CERT='$OCF_RESKEY_replication_master_ssl_cert', \
+ MASTER_SSL_KEY='$OCF_RESKEY_replication_master_ssl_key'"
+ fi
ocf_run $MYSQL $MYSQL_OPTIONS_REPL \
-e "CHANGE MASTER TO MASTER_HOST='$new_master', \
MASTER_PORT=$OCF_RESKEY_replication_port, \
MASTER_USER='$OCF_RESKEY_replication_user', \
- MASTER_PASSWORD='$OCF_RESKEY_replication_passwd' $master_params"
+ MASTER_PASSWORD='$OCF_RESKEY_replication_passwd' $master_params
$master_ssl_params"
rm -f $tmpfile
}
@@ -693,7 +723,7 @@
# crm_attribute command looks like this:
# scope=nodes name=IP value=10.2.2.161
# If the ${INSTANCE_ATTR_NAME}_MYSQL_MASTER_IP node attribute is not defined,
fallback is to uname -n
-# The ${INSTANCE_ATTR_NAME}_MYSQL_MASTER_IP is the IP address that will be
used for the
+# The ${INSTANCE_ATTR_NAME}_MYSQL_MASTER_IP is the IP address that will be
used for the
# change master to command.
get_local_ip() {
local IP
@@ -717,7 +747,7 @@
if ocf_is_probe; then
status_loglevel="info"
fi
-
+
mysql_common_status $status_loglevel
rc=$?
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/resource-agents-4.3.0+git131.7af8c368/heartbeat/mysql-common.sh
new/resource-agents-4.3.0+git161.00cb192d/heartbeat/mysql-common.sh
--- old/resource-agents-4.3.0+git131.7af8c368/heartbeat/mysql-common.sh
2019-08-12 10:46:28.000000000 +0200
+++ new/resource-agents-4.3.0+git161.00cb192d/heartbeat/mysql-common.sh
2019-09-09 14:05:39.000000000 +0200
@@ -49,6 +49,9 @@
OCF_RESKEY_replication_user_default="root"
OCF_RESKEY_replication_passwd_default=""
OCF_RESKEY_replication_port_default="3306"
+OCF_RESKEY_replication_master_ssl_ca_default=""
+OCF_RESKEY_replication_master_ssl_cert_default=""
+OCF_RESKEY_replication_master_ssl_key_default=""
OCF_RESKEY_max_slave_lag_default="3600"
OCF_RESKEY_evict_outdated_slaves_default="false"
OCF_RESKEY_reader_attribute_default="readable"
@@ -78,6 +81,9 @@
: ${OCF_RESKEY_replication_user=${OCF_RESKEY_replication_user_default}}
: ${OCF_RESKEY_replication_passwd=${OCF_RESKEY_replication_passwd_default}}
: ${OCF_RESKEY_replication_port=${OCF_RESKEY_replication_port_default}}
+:
${OCF_RESKEY_replication_master_ssl_ca=${OCF_RESKEY_replication_master_ssl_ca_default}}
+:
${OCF_RESKEY_replication_master_ssl_cert=${OCF_RESKEY_replication_master_ssl_cert_default}}
+:
${OCF_RESKEY_replication_master_ssl_key=${OCF_RESKEY_replication_master_ssl_key_default}}
: ${OCF_RESKEY_max_slave_lag=${OCF_RESKEY_max_slave_lag_default}}
:
${OCF_RESKEY_evict_outdated_slaves=${OCF_RESKEY_evict_outdated_slaves_default}}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/resource-agents-4.3.0+git131.7af8c368/heartbeat/ora-common.sh
new/resource-agents-4.3.0+git161.00cb192d/heartbeat/ora-common.sh
--- old/resource-agents-4.3.0+git131.7af8c368/heartbeat/ora-common.sh
2019-08-12 10:46:28.000000000 +0200
+++ new/resource-agents-4.3.0+git161.00cb192d/heartbeat/ora-common.sh
2019-09-09 14:05:39.000000000 +0200
@@ -26,8 +26,14 @@
TNS_ADMIN=$4
# get ORACLE_HOME from /etc/oratab if not set
- [ x = "x$ORACLE_HOME" ] &&
+ if [ x = "x$ORACLE_HOME" ];then
ORACLE_HOME=`awk -F: "/^$ORACLE_SID:/"'{print $2}' /etc/oratab`
+ if [ -f /etc/oratab ]; then
+ if [ x = "x$ORACLE_HOME" ];then
+ handle_invalid_env $OCF_ERR_CONFIGURED
"ORACLE_HOME could not be obtained from /etc/oratab. Please check the sid
parameter."
+ fi
+ fi
+ fi
# there a better way to find out ORACLE_OWNER?
[ x = "x$ORACLE_OWNER" ] &&
@@ -53,10 +59,6 @@
ora_common_validate_all() {
# Let's make sure a few important things are set...
- if [ x = "x$ORACLE_HOME" ]; then
- ocf_log info "ORACLE_HOME not set"
- return $OCF_ERR_INSTALLED
- fi
if [ x = "x$ORACLE_OWNER" ]; then
ocf_log info "ORACLE_OWNER not set"
return $OCF_ERR_INSTALLED
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/resource-agents-4.3.0+git131.7af8c368/heartbeat/rabbitmq-cluster
new/resource-agents-4.3.0+git161.00cb192d/heartbeat/rabbitmq-cluster
--- old/resource-agents-4.3.0+git131.7af8c368/heartbeat/rabbitmq-cluster
2019-08-12 10:46:28.000000000 +0200
+++ new/resource-agents-4.3.0+git161.00cb192d/heartbeat/rabbitmq-cluster
2019-09-09 14:05:39.000000000 +0200
@@ -114,6 +114,62 @@
rm -rf $RMQ_DATA_DIR > /dev/null 2>&1
}
+rmq_restore_users_perms_policies()
+{
+ # Restore users, user permissions, and policies (if any)
+ BaseDataDir=`dirname $RMQ_DATA_DIR`
+ $RMQ_EVAL "
+ %% Run only if Mnesia is ready.
+ lists:any(fun({mnesia,_,_}) -> true; ({_,_,_}) -> false end,
application:which_applications()) andalso
+ begin
+ Restore = fun(Table, PostprocessFun, Filename) ->
+ case file:consult(Filename) of
+ {error, _} ->
+ ok;
+ {ok, [Result]} ->
+ lists:foreach(fun(X) ->
mnesia:dirty_write(Table, PostprocessFun(X)) end, Result),
+ file:delete(Filename)
+ end
+ end,
+
+ %% Restore users
+
+ Upgrade = fun
+ ({internal_user, A, B, C}) -> {internal_user,
A, B, C, rabbit_password_hashing_md5};
+ ({internal_user, A, B, C, D}) ->
{internal_user, A, B, C, D}
+ end,
+
+ Downgrade = fun
+ ({internal_user, A, B, C}) -> {internal_user,
A, B, C};
+ ({internal_user, A, B, C,
rabbit_password_hashing_md5}) -> {internal_user, A, B, C};
+ %% Incompatible scheme, so we will loose user's
password ('B' value) during conversion.
+ %% Unfortunately, this case will require manual
intervention - user have to run:
+ %% rabbitmqctl change_password <A>
<somenewpassword>
+ ({internal_user, A, B, C, _}) ->
{internal_user, A, B, C}
+ end,
+
+ %% Check db scheme first
+ [WildPattern] = ets:select(mnesia_gvar, [ {
{{rabbit_user, wild_pattern}, '\\\$1'}, [], ['\\\$1'] } ]),
+ case WildPattern of
+ %% Version < 3.6.0
+ {internal_user,'_','_','_'} ->
+ Restore(rabbit_user, Downgrade,
\"$BaseDataDir/users.erl\");
+ %% Version >= 3.6.0
+ {internal_user,'_','_','_','_'} ->
+ Restore(rabbit_user, Upgrade,
\"$BaseDataDir/users.erl\")
+ end,
+
+ NoOp = fun(X) -> X end,
+
+ %% Restore user permissions
+ Restore(rabbit_user_permission, NoOp,
\"$BaseDataDir/users_perms.erl\"),
+
+ %% Restore policies
+ Restore(rabbit_runtime_parameters, NoOp,
\"$BaseDataDir/policies.erl\")
+ end.
+ "
+}
+
rmq_local_node()
{
@@ -411,6 +467,7 @@
if [ -z "$join_list" ]; then
rmq_start_first
rc=$?
+ rmq_restore_users_perms_policies
return $rc
fi
@@ -437,58 +494,8 @@
return $RMQ_TRY_RESTART_ERROR_CODE
fi
- # Restore users, user permissions, and policies (if any)
- BaseDataDir=`dirname $RMQ_DATA_DIR`
- $RMQ_EVAL "
- %% Run only if Mnesia is ready.
- lists:any(fun({mnesia,_,_}) -> true; ({_,_,_}) -> false end,
application:which_applications()) andalso
- begin
- Restore = fun(Table, PostprocessFun, Filename) ->
- case file:consult(Filename) of
- {error, _} ->
- ok;
- {ok, [Result]} ->
- lists:foreach(fun(X) ->
mnesia:dirty_write(Table, PostprocessFun(X)) end, Result),
- file:delete(Filename)
- end
- end,
+ rmq_restore_users_perms_policies
- %% Restore users
-
- Upgrade = fun
- ({internal_user, A, B, C}) -> {internal_user,
A, B, C, rabbit_password_hashing_md5};
- ({internal_user, A, B, C, D}) ->
{internal_user, A, B, C, D}
- end,
-
- Downgrade = fun
- ({internal_user, A, B, C}) -> {internal_user,
A, B, C};
- ({internal_user, A, B, C,
rabbit_password_hashing_md5}) -> {internal_user, A, B, C};
- %% Incompatible scheme, so we will loose user's
password ('B' value) during conversion.
- %% Unfortunately, this case will require manual
intervention - user have to run:
- %% rabbitmqctl change_password <A>
<somenewpassword>
- ({internal_user, A, B, C, _}) ->
{internal_user, A, B, C}
- end,
-
- %% Check db scheme first
- [WildPattern] = ets:select(mnesia_gvar, [ {
{{rabbit_user, wild_pattern}, '\\\$1'}, [], ['\\\$1'] } ]),
- case WildPattern of
- %% Version < 3.6.0
- {internal_user,'_','_','_'} ->
- Restore(rabbit_user, Downgrade,
\"$BaseDataDir/users.erl\");
- %% Version >= 3.6.0
- {internal_user,'_','_','_','_'} ->
- Restore(rabbit_user, Upgrade,
\"$BaseDataDir/users.erl\")
- end,
-
- NoOp = fun(X) -> X end,
-
- %% Restore user permissions
- Restore(rabbit_user_permission, NoOp,
\"$BaseDataDir/users_perms.erl\"),
-
- %% Restore policies
- Restore(rabbit_runtime_parameters, NoOp,
\"$BaseDataDir/policies.erl\")
- end.
- "
return $OCF_SUCCESS
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/resource-agents-4.3.0+git131.7af8c368/make/release.mk
new/resource-agents-4.3.0+git161.00cb192d/make/release.mk
--- old/resource-agents-4.3.0+git131.7af8c368/make/release.mk 2019-08-12
10:46:28.000000000 +0200
+++ new/resource-agents-4.3.0+git161.00cb192d/make/release.mk 2019-09-09
14:05:39.000000000 +0200
@@ -35,7 +35,7 @@
tarballs: tag
./autogen.sh
./configure
- DISTCHECK_CONFIGURE_FLAGS="--with-systemdsystemunitdir=no
--with-systemdtmpfilesdir=no" make distcheck
+ make distcheck
sha256: tarballs $(project)-$(version).sha256
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/resource-agents-4.3.0+git131.7af8c368/resource-agents.spec.in
new/resource-agents-4.3.0+git161.00cb192d/resource-agents.spec.in
--- old/resource-agents-4.3.0+git131.7af8c368/resource-agents.spec.in
2019-08-12 10:46:28.000000000 +0200
+++ new/resource-agents-4.3.0+git161.00cb192d/resource-agents.spec.in
2019-09-09 14:05:39.000000000 +0200
@@ -30,11 +30,6 @@
} ||
%{?__transaction_systemd_inhibit:1}%{!?__transaction_systemd_inhibit:0}%{nil \
} || %(test -f /usr/lib/os-release; test $? -ne 0; echo $?))
-#
-# Since this spec file supports multiple distributions, ensure we
-# use the correct group for each.
-#
-
# SSLeay (required by ldirectord)
%if 0%{?suse_version}
%global SSLeay perl-Net_SSLeay
@@ -46,38 +41,30 @@
%bcond_@rgmanager@ rgmanager
%bcond_@linux-ha@ linuxha
-# build with HA_BIN compatibility for the existing Heartbeat stack
-%bcond_@compat-habindir@ compat_habindir
-%if %{with compat_habindir}
-%global _libexecdir %{_libdir}
-%endif
-
Name: resource-agents
Summary: Open Source HA Reusable Cluster Resource Scripts
Version: @version@
Release:
@specver@%{?rcver:%{rcver}}%{?numcomm:.%{numcomm}}%{?alphatag:.%{alphatag}}%{?dirty:.%{dirty}}%{?dist}
License: GPLv2+ and LGPLv2+
URL: https://github.com/ClusterLabs/resource-agents
-%if 0%{?fedora} || 0%{?centos_ver} || 0%{?rhel}
-Group: System Environment/Base
-%else
-Group: Productivity/Clustering/HA
-%endif
Source0:
%{name}-%{version}%{?rcver:%{rcver}}%{?numcomm:.%{numcomm}}%{?alphatag:-%{alphatag}}%{?dirty:-%{dirty}}.tar.bz2
Obsoletes: heartbeat-resources <= %{version}
Provides: heartbeat-resources = %{version}
-## Setup/build bits
-BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
-
# Build dependencies
-BuildRequires: automake autoconf pkgconfig
+BuildRequires: automake autoconf pkgconfig gcc
BuildRequires: perl
BuildRequires: libxslt glib2-devel
+BuildRequires: systemd
BuildRequires: which
-%if 0%{?fedora} || 0%{?centos_ver} || 0%{?rhel}
-BuildRequires: cluster-glue-libs-devel
+%if 0%{?fedora} || 0%{?centos} > 7 || 0%{?rhel} > 7 || 0%{?suse_version}
+BuildRequires: python3-devel
+%else
+BuildRequires: python-devel
+%endif
+
+%if 0%{?fedora} || 0%{?centos} || 0%{?rhel}
BuildRequires: docbook-style-xsl docbook-dtds
%if 0%{?rhel} == 0
BuildRequires: libnet-devel
@@ -85,60 +72,28 @@
%endif
%if 0%{?suse_version}
-%if 0%{?suse_version} >= 1140
-BuildRequires: libnet1
-%else
-BuildRequires: libnet
-%endif
+BuildRequires: libnet-devel
BuildRequires: libglue-devel
BuildRequires: libxslt docbook_4 docbook-xsl-stylesheets
%endif
## Runtime deps
# system tools shared by several agents
-%if 0%{?centos_ver} > 6 || 0%{?rhel} > 6
-Requires: /usr/bin/gawk
-Requires: /usr/bin/ps
-Requires: /usr/sbin/fuser /usr/bin/mount
-Requires: hostname
-%else
-Requires: /bin/gawk
-Requires: /bin/ps
-Requires: /sbin/fuser /bin/mount
-Requires: /bin/hostname
-%endif
-Requires: bash grep sed
-Requires: /usr/bin/pkill /bin/netstat
+Requires: /bin/bash /usr/bin/grep /bin/sed /bin/gawk
+Requires: /bin/ps /usr/bin/pkill /usr/bin/hostname /usr/bin/netstat
+Requires: /usr/sbin/fuser /bin/mount
# Filesystem / fs.sh / netfs.sh
-%if 0%{?centos_ver} > 6 || 0%{?rhel} > 6
-Requires: /usr/sbin/fsck
+Requires: /sbin/fsck
Requires: /usr/sbin/fsck.ext2 /usr/sbin/fsck.ext3 /usr/sbin/fsck.ext4
Requires: /usr/sbin/fsck.xfs
-Requires: /usr/sbin/mount.cifs
-%else
-Requires: /sbin/fsck
-Requires: /sbin/fsck.ext2 /sbin/fsck.ext3 /sbin/fsck.ext4
-%if 0%{?rhel} == 0
-Requires: /sbin/fsck.xfs
-%endif
-Requires: /sbin/mount.cifs
-%endif
-Requires: /sbin/mount.nfs /sbin/mount.nfs4
+Requires: /sbin/mount.nfs /sbin/mount.nfs4 /usr/sbin/mount.cifs
# IPaddr2
-%if 0%{?centos_ver} > 6 || 0%{?rhel} > 6
-Requires: /usr/sbin/ip
-%else
Requires: /sbin/ip
-%endif
# LVM / lvm.sh
-%if 0%{?centos_ver} > 6 || 0%{?rhel} > 6
Requires: /usr/sbin/lvm
-%else
-Requires: /sbin/lvm
-%endif
# nfsserver / netfs.sh
Requires: /usr/sbin/rpc.nfsd /sbin/rpc.statd /usr/sbin/rpc.mountd
@@ -149,7 +104,7 @@
Requires: /usr/sbin/ethtool
Requires: /sbin/rdisc /usr/sbin/arping /bin/ping /bin/ping6
-#nfsexport.sh
+# nfsexport.sh
Requires: /sbin/findfs
Requires: /sbin/quotaon /sbin/quotacheck
%endif
@@ -163,19 +118,17 @@
%package -n ldirectord
License: GPLv2+
Summary: A Monitoring Daemon for Maintaining High Availability Resources
-%if 0%{?fedora} || 0%{?centos_ver} || 0%{?rhel}
-Group: System Environment/Daemons
+%if 0%{?fedora} || 0%{?centos} || 0%{?rhel}
%else
-Group: Productivity/Clustering/HA
%endif
Obsoletes: heartbeat-ldirectord <= %{version}
Provides: heartbeat-ldirectord = %{version}
-%if 0%{?fedora} > 18 || 0%{?centos_ver} > 6 || 0%{?rhel} > 6
+%if 0%{?fedora} > 18 || 0%{?centos} > 6 || 0%{?rhel} > 6
BuildRequires: perl-podlators
%endif
Requires: %{SSLeay} perl-libwww-perl perl-MailTools
Requires: ipvsadm logrotate
-%if 0%{?fedora}
+%if 0%{?fedora_version}
Requires: perl-Net-IMAP-Simple-SSL
Requires(post): /sbin/chkconfig
Requires(preun):/sbin/chkconfig
@@ -198,7 +151,7 @@
%endif
%prep
-%if 0%{?suse_version} == 0 && 0%{?fedora} == 0 && 0%{?centos_ver} == 0 &&
0%{?rhel} == 0
+%if 0%{?suse_version} == 0 && 0%{?fedora} == 0 && 0%{?centos} == 0 &&
0%{?rhel} == 0
%{error:Unable to determine the distribution/version. This is generally caused
by missing /etc/rpm/macros.dist. Please install the correct build packages or
define the required macros manually.}
exit 1
%endif
@@ -209,7 +162,7 @@
./autogen.sh
fi
-%if 0%{?fedora} >= 11 || 0%{?centos_ver} > 5 || 0%{?rhel} > 5
+%if 0%{?fedora} >= 11 || 0%{?centos} > 5 || 0%{?rhel} > 5
CFLAGS="$(echo '%{optflags}')"
%global conf_opt_fatal "--enable-fatal-warnings=no"
%else
@@ -230,13 +183,16 @@
export CFLAGS
%configure \
- %{?conf_opt_rsctmpdir:%conf_opt_rsctmpdir} \
+%if 0%{?fedora} || 0%{?centos} > 7 || 0%{?rhel} > 7 || 0%{?suse_version}
+ PYTHON="%{__python3}" \
+%endif
%{conf_opt_fatal} \
%if %{defined _unitdir}
--with-systemdsystemunitdir=%{_unitdir} \
%endif
%if %{defined _tmpfilesdir}
--with-systemdtmpfilesdir=%{_tmpfilesdir} \
+ --with-rsctmpdir=/run/resource-agents \
%endif
--with-pkg-name=%{name} \
--with-ras-set=%{rasset}
@@ -262,20 +218,12 @@
test -d %{buildroot}/sbin || mkdir %{buildroot}/sbin
(
cd %{buildroot}/sbin
-%if %{defined _unitdir}
- ln -s /usr/sbin/service rcldirectord
-%else
ln -sf /%{_sysconfdir}/init.d/ldirectord rcldirectord
-%endif
) || true
%endif
%endif
-%clean
-rm -rf %{buildroot}
-
%files
-%defattr(-,root,root)
%doc AUTHORS COPYING COPYING.GPLv3 COPYING.LGPL ChangeLog
%if %{with linuxha}
%doc doc/README.webapps
@@ -289,15 +237,15 @@
%endif
%if %{with linuxha}
-%dir /usr/lib/ocf
-%dir /usr/lib/ocf/resource.d
-%dir /usr/lib/ocf/lib
+%dir %{_usr}/lib/ocf
+%dir %{_usr}/lib/ocf/resource.d
+%dir %{_usr}/lib/ocf/lib
-/usr/lib/ocf/lib/heartbeat
+%{_usr}/lib/ocf/lib/heartbeat
-/usr/lib/ocf/resource.d/heartbeat
+%{_usr}/lib/ocf/resource.d/heartbeat
%if %{with rgmanager}
-/usr/lib/ocf/resource.d/redhat
+%{_usr}/lib/ocf/resource.d/redhat
%endif
%if %{defined _unitdir}
@@ -311,24 +259,31 @@
%dir %{_datadir}/%{name}/ocft
%{_datadir}/%{name}/ocft/configs
%{_datadir}/%{name}/ocft/caselib
-%{_datadir}/%{name}/ocft/helpers.sh
-%{_datadir}/%{name}/ocft/runocft
-%{_datadir}/%{name}/ocft/runocft.prereq
%{_datadir}/%{name}/ocft/README
%{_datadir}/%{name}/ocft/README.zh_CN
+%{_datadir}/%{name}/ocft/helpers.sh
+%exclude %{_datadir}/%{name}/ocft/runocft
+%exclude %{_datadir}/%{name}/ocft/runocft.prereq
%{_sbindir}/ocf-tester
%{_sbindir}/ocft
-%{_sbindir}/sfex_init
-%{_sbindir}/sfex_stat
+%if 0%{?suse_version}
+%{_sbindir}/sfex_*
+%endif
%{_includedir}/heartbeat
+%if %{defined _tmpfilesdir}
+%dir %attr (1755, root, root) /run/resource-agents
+%else
%dir %attr (1755, root, root) %{_var}/run/resource-agents
+%endif
%{_mandir}/man7/*.7*
%{_mandir}/man8/ocf-tester.8*
+%if 0%{?suse_version}
%{_mandir}/man8/sfex_init.8*
+%endif
# For compatability with pre-existing agents
%dir %{_sysconfdir}/ha.d
@@ -336,50 +291,41 @@
%{_libexecdir}/heartbeat
-%post -n resource-agents
-if [ $1 = 2 ]; then
- if [ -d %{_var}/run/heartbeat/rsctmp ]; then
- cp -fpr %{_var}/run/heartbeat/rsctmp/* %{_var}/run/resource-agents/
1>/dev/null 2>&1
- rm -fr %{_var}/run/heartbeat/rsctmp
- fi
-fi
%if %{with rgmanager}
+%post -n resource-agents
ccs_update_schema > /dev/null 2>&1 ||:
%endif
%if 0%{?suse_version}
%preun -n ldirectord
-%if %{defined _unitdir}
-%service_del_preun ldirectord.service
-%else
%stop_on_removal ldirectord
-%endif
%postun -n ldirectord
-%if %{defined _unitdir}
-%service_del_postun ldirectord.service
-%else
%insserv_cleanup
%endif
-%post -n ldirectord
-%if %{defined _unitdir}
-%service_add_post ldirectord.service
-%endif
-%pre -n ldirectord
-%if %{defined _unitdir}
-%service_add_pre ldirectord.service
-%endif
-%endif
%if 0%{?fedora}
%preun -n ldirectord
+%if %{defined _unitdir}
+%systemd_preun ldirectord.service
+%else
/sbin/chkconfig --del ldirectord
-%postun -n ldirectord -p /sbin/ldconfig
+%endif
+%postun -n ldirectord
+/sbin/ldconfig
+%if %{defined _unitdir}
+%systemd_postun_with_restart ldirectord.service
+%endif
%post -n ldirectord
+%if %{defined _unitdir}
+%systemd_post ldirectord.service
+%else
/sbin/chkconfig --add ldirectord
%endif
+%endif
+%endif
+%if %{with linuxha}
%files -n ldirectord
-%defattr(-,root,root)
%{_sbindir}/ldirectord
%doc ldirectord/ldirectord.cf COPYING
%{_mandir}/man8/ldirectord.8*
@@ -390,6 +336,7 @@
%if %{defined _unitdir}
%{_unitdir}/ldirectord.service
%exclude %{_sysconfdir}/init.d/ldirectord
+%exclude %{_sysconfdir}/rc.d/init.d/ldirectord
%else
%{_sysconfdir}/init.d/ldirectord
%endif
@@ -397,7 +344,7 @@
/sbin/rcldirectord
%endif
%if 0%{?fedora}
-/usr/lib/ocf/resource.d/heartbeat/ldirectord
+%{_usr}/lib/ocf/resource.d/heartbeat/ldirectord
%endif
%endif