diff --git a/_service b/_service
index c37468a..27105ac 100644
--- a/_service
+++ b/_service
@@ -8,10 +8,10 @@
To update to a new release, change "revision" to the desired
git commit hash and bump "version" if necessary
- 1.1.18
+ 2.0.0
-->
- 1.1.18+%cd.%h
- 2.0
+ 2.0.0+%cd.%h
+ master
enable
diff --git a/_servicedata b/_servicedata
index ffb1772..fead712 100644
--- a/_servicedata
+++ b/_servicedata
@@ -1,6 +1,6 @@
git://github.com/ClusterLabs/pacemaker.git
- 224e03bb1a842db796283054eb27eee6f00f1a7c
+ 3d81c89b84db34ba5cb0b91354b46a32fcb5a3b2
\ No newline at end of file
diff --git a/bug-728579_pacemaker-stonith-dev-id.patch b/bug-728579_pacemaker-stonith-dev-id.patch
index 349bd3f..b7a526d 100644
--- a/bug-728579_pacemaker-stonith-dev-id.patch
+++ b/bug-728579_pacemaker-stonith-dev-id.patch
@@ -4,11 +4,11 @@ Date: Thu Sep 6 15:14:58 2012 +0800
Medium: stonith: Expose IDs of stonith resources to stonith agents through "$CRM_meta_st_device_id" environment variable
-Index: pacemaker-1.1.17+20170926.4328c6a65/fencing/commands.c
+Index: pacemaker-2.0.0+20180726.3d81c89b8/daemons/fenced/fenced_commands.c
===================================================================
---- pacemaker-1.1.17+20170926.4328c6a65.orig/fencing/commands.c
-+++ pacemaker-1.1.17+20170926.4328c6a65/fencing/commands.c
-@@ -925,6 +925,7 @@ build_device_from_xml(xmlNode * msg)
+--- pacemaker-2.0.0+20180726.3d81c89b8.orig/daemons/fenced/fenced_commands.c
++++ pacemaker-2.0.0+20180726.3d81c89b8/daemons/fenced/fenced_commands.c
+@@ -940,6 +940,7 @@ build_device_from_xml(xmlNode * msg)
device->id, device->on_target_actions);
}
@@ -16,11 +16,11 @@ Index: pacemaker-1.1.17+20170926.4328c6a65/fencing/commands.c
device->work = mainloop_add_trigger(G_PRIORITY_HIGH, stonith_device_dispatch, device);
/* TODO: Hook up priority */
-Index: pacemaker-1.1.17+20170926.4328c6a65/lib/fencing/st_client.c
+Index: pacemaker-2.0.0+20180726.3d81c89b8/lib/fencing/st_client.c
===================================================================
---- pacemaker-1.1.17+20170926.4328c6a65.orig/lib/fencing/st_client.c
-+++ pacemaker-1.1.17+20170926.4328c6a65/lib/fencing/st_client.c
-@@ -54,6 +54,7 @@ struct stonith_action_s {
+--- pacemaker-2.0.0+20180726.3d81c89b8.orig/lib/fencing/st_client.c
++++ pacemaker-2.0.0+20180726.3d81c89b8/lib/fencing/st_client.c
+@@ -38,6 +38,7 @@ struct stonith_action_s {
char *action;
char *victim;
char *args;
@@ -28,15 +28,15 @@ Index: pacemaker-1.1.17+20170926.4328c6a65/lib/fencing/st_client.c
int timeout;
int async;
void *userdata;
-@@ -666,6 +667,7 @@ stonith_action_destroy(stonith_action_t
- free(action->args);
- free(action->action);
- free(action->victim);
-+ free(action->dev_id);
- free(action);
+@@ -621,6 +622,7 @@ stonith__destroy_action(stonith_action_t
+ free(action->args);
+ free(action->action);
+ free(action->victim);
++ free(action->dev_id);
+ free(action);
+ }
}
-
-@@ -693,6 +695,8 @@ stonith_action_create(const char *agent,
+@@ -690,6 +692,8 @@ stonith_action_create(const char *agent,
if (device_args) {
char buffer[512];
const char *value = NULL;
@@ -45,7 +45,7 @@ Index: pacemaker-1.1.17+20170926.4328c6a65/lib/fencing/st_client.c
snprintf(buffer, sizeof(buffer), "pcmk_%s_retries", _action);
value = g_hash_table_lookup(device_args, buffer);
-@@ -700,6 +704,11 @@ stonith_action_create(const char *agent,
+@@ -697,6 +701,11 @@ stonith_action_create(const char *agent,
if (value) {
action->max_retries = atoi(value);
}
@@ -57,7 +57,7 @@ Index: pacemaker-1.1.17+20170926.4328c6a65/lib/fencing/st_client.c
}
return action;
-@@ -881,6 +890,8 @@ internal_stonith_action_execute(stonith_
+@@ -878,6 +887,8 @@ internal_stonith_action_execute(stonith_
if (!pid) {
/* child */
@@ -66,7 +66,7 @@ Index: pacemaker-1.1.17+20170926.4328c6a65/lib/fencing/st_client.c
setpgid(0, 0);
close(1);
-@@ -903,6 +914,10 @@ internal_stonith_action_execute(stonith_
+@@ -900,6 +911,10 @@ internal_stonith_action_execute(stonith_
close(p_write_fd);
close(p_stderr_fd);
diff --git a/bug-806256_pacemaker-log-level-notice.patch b/bug-806256_pacemaker-log-level-notice.patch
index 6e73ec5..e19528d 100644
--- a/bug-806256_pacemaker-log-level-notice.patch
+++ b/bug-806256_pacemaker-log-level-notice.patch
@@ -4,11 +4,11 @@ Date: Thu Mar 14 09:41:53 2013 +0800
Log: Change some messages to notice level (bnc#806256)
-Index: pacemaker-1.1.18+20180406.633845120/crmd/membership.c
+Index: pacemaker-1.1.18+20180430.c0d7ba798/daemons/controld/controld_membership.c
===================================================================
---- pacemaker-1.1.18+20180406.633845120.orig/crmd/membership.c
-+++ pacemaker-1.1.18+20180406.633845120/crmd/membership.c
-@@ -426,7 +426,7 @@ crm_update_quorum(gboolean quorum, gbool
+--- pacemaker-1.1.18+20180430.c0d7ba798.orig/daemons/controld/controld_membership.c
++++ pacemaker-1.1.18+20180430.c0d7ba798/daemons/controld/controld_membership.c
+@@ -414,7 +414,7 @@ crm_update_quorum(gboolean quorum, gbool
crm_xml_add(update, XML_ATTR_DC_UUID, fsa_our_uuid);
fsa_cib_update(XML_TAG_CIB, update, call_options, call_id, NULL);
@@ -17,11 +17,11 @@ Index: pacemaker-1.1.18+20180406.633845120/crmd/membership.c
fsa_register_cib_callback(call_id, FALSE, NULL, cib_quorum_update_complete);
free_xml(update);
-Index: pacemaker-1.1.18+20180406.633845120/crmd/tengine.c
+Index: pacemaker-1.1.18+20180430.c0d7ba798/daemons/controld/controld_transition.c
===================================================================
---- pacemaker-1.1.18+20180406.633845120.orig/crmd/tengine.c
-+++ pacemaker-1.1.18+20180406.633845120/crmd/tengine.c
-@@ -188,7 +188,7 @@ do_te_invoke(long long action,
+--- pacemaker-1.1.18+20180430.c0d7ba798.orig/daemons/controld/controld_transition.c
++++ pacemaker-1.1.18+20180430.c0d7ba798/daemons/controld/controld_transition.c
+@@ -187,7 +187,7 @@ do_te_invoke(long long action,
transition_graph = create_blank_graph();
return;
}
@@ -30,11 +30,11 @@ Index: pacemaker-1.1.18+20180406.633845120/crmd/tengine.c
graph_input);
te_reset_job_counts();
-Index: pacemaker-1.1.18+20180406.633845120/fencing/remote.c
+Index: pacemaker-1.1.18+20180430.c0d7ba798/daemons/fenced/fenced_remote.c
===================================================================
---- pacemaker-1.1.18+20180406.633845120.orig/fencing/remote.c
-+++ pacemaker-1.1.18+20180406.633845120/fencing/remote.c
-@@ -576,7 +576,7 @@ remote_op_timeout(gpointer userdata)
+--- pacemaker-1.1.18+20180430.c0d7ba798.orig/daemons/fenced/fenced_remote.c
++++ pacemaker-1.1.18+20180430.c0d7ba798/daemons/fenced/fenced_remote.c
+@@ -578,7 +578,7 @@ remote_op_timeout(gpointer userdata)
return FALSE;
}
diff --git a/bug-812269_pacemaker-fencing-device-register-messages.patch b/bug-812269_pacemaker-fencing-device-register-messages.patch
index 9485d93..ba2f2fc 100644
--- a/bug-812269_pacemaker-fencing-device-register-messages.patch
+++ b/bug-812269_pacemaker-fencing-device-register-messages.patch
@@ -4,11 +4,11 @@ Date: Thu Apr 18 16:00:02 2013 +0800
Log: fencing: Drop the severity of the messages on registering a stonith device
-Index: pacemaker-1.1.11+git20140303.ca8234d/fencing/commands.c
+Index: pacemaker-1.1.18+20180430.c0d7ba798/daemons/fenced/fenced_commands.c
===================================================================
---- pacemaker-1.1.11+git20140303.ca8234d.orig/fencing/commands.c
-+++ pacemaker-1.1.11+git20140303.ca8234d/fencing/commands.c
-@@ -840,7 +840,7 @@ stonith_device_register(xmlNode * msg, c
+--- pacemaker-1.1.18+20180430.c0d7ba798.orig/daemons/fenced/fenced_commands.c
++++ pacemaker-1.1.18+20180430.c0d7ba798/daemons/fenced/fenced_commands.c
+@@ -1190,7 +1190,7 @@ stonith_device_register(xmlNode * msg, c
}
g_hash_table_replace(device_list, device->id, device);
@@ -17,11 +17,11 @@ Index: pacemaker-1.1.11+git20140303.ca8234d/fencing/commands.c
g_hash_table_size(device_list));
}
if (desc) {
-Index: pacemaker-1.1.11+git20140303.ca8234d/fencing/main.c
+Index: pacemaker-1.1.18+20180430.c0d7ba798/daemons/fenced/pacemaker-fenced.c
===================================================================
---- pacemaker-1.1.11+git20140303.ca8234d.orig/fencing/main.c
-+++ pacemaker-1.1.11+git20140303.ca8234d/fencing/main.c
-@@ -981,7 +981,7 @@ update_cib_cache_cb(const char *event, x
+--- pacemaker-1.1.18+20180430.c0d7ba798.orig/daemons/fenced/pacemaker-fenced.c
++++ pacemaker-1.1.18+20180430.c0d7ba798/daemons/fenced/pacemaker-fenced.c
+@@ -1021,7 +1021,7 @@ update_cib_cache_cb(const char *event, x
break;
case -pcmk_err_diff_resync:
case -pcmk_err_diff_failed:
diff --git a/bug-943295_pacemaker-lrmd-log-notice.patch b/bug-943295_pacemaker-lrmd-log-notice.patch
index c47be4a..5731c13 100644
--- a/bug-943295_pacemaker-lrmd-log-notice.patch
+++ b/bug-943295_pacemaker-lrmd-log-notice.patch
@@ -1,8 +1,8 @@
-Index: pacemaker-1.1.13+git20150827.e8888b9/lrmd/lrmd.c
+Index: pacemaker-1.1.18+20180430.c0d7ba798/daemons/execd/execd_commands.c
===================================================================
---- pacemaker-1.1.13+git20150827.e8888b9.orig/lrmd/lrmd.c
-+++ pacemaker-1.1.13+git20150827.e8888b9/lrmd/lrmd.c
-@@ -97,7 +97,7 @@ static void
+--- pacemaker-1.1.18+20180430.c0d7ba798.orig/daemons/execd/execd_commands.c
++++ pacemaker-1.1.18+20180430.c0d7ba798/daemons/execd/execd_commands.c
+@@ -83,7 +83,7 @@ static void
log_finished(lrmd_cmd_t * cmd, int exec_time, int queue_time)
{
char pid_str[32] = { 0, };
@@ -11,7 +11,7 @@ Index: pacemaker-1.1.13+git20150827.e8888b9/lrmd/lrmd.c
if (cmd->last_pid) {
snprintf(pid_str, 32, "%d", cmd->last_pid);
-@@ -121,7 +121,7 @@ log_finished(lrmd_cmd_t * cmd, int exec_
+@@ -107,7 +107,7 @@ log_finished(lrmd_cmd_t * cmd, int exec_
static void
log_execute(lrmd_cmd_t * cmd)
{
diff --git a/bug-977201_pacemaker-controld-self-fencing.patch b/bug-977201_pacemaker-controld-self-fencing.patch
index 8f0ad44..2da7b8b 100644
--- a/bug-977201_pacemaker-controld-self-fencing.patch
+++ b/bug-977201_pacemaker-controld-self-fencing.patch
@@ -4,18 +4,18 @@ Date: Mon Jun 13 17:26:27 2016 +0200
Fix: controld: Prevent unwanted self-fencing if "stateful_merge_wait" state of dlm is not available
-Index: pacemaker-1.1.18+20180427.a34ccd926/extra/resources/controld
+Index: pacemaker-2.0.0+20180726.3d81c89b8/extra/resources/controld
===================================================================
---- pacemaker-1.1.18+20180427.a34ccd926.orig/extra/resources/controld
-+++ pacemaker-1.1.18+20180427.a34ccd926/extra/resources/controld
-@@ -227,10 +227,6 @@ controld_monitor() {
+--- pacemaker-2.0.0+20180726.3d81c89b8.orig/extra/resources/controld
++++ pacemaker-2.0.0+20180726.3d81c89b8/extra/resources/controld
+@@ -224,10 +224,6 @@ controld_monitor() {
if [ -n "$smw" ] && [ $smw -eq 1 ]; then
ocf_log err "DLM status is: stateful_merge_wait"
- rc=$OCF_ERR_GENERIC
+ CM_RC=$OCF_ERR_GENERIC
- elif [ -z "$smw" ] && dlm_tool ls | grep -q "wait fencing" && \
- ! stonith_admin -H '*' -V | grep -q "wishes to"; then
- ocf_log err "DLM status is: wait fencing"
-- rc=$OCF_ERR_GENERIC
+- CM_RC=$OCF_ERR_GENERIC
else
- rc=$OCF_SUCCESS
+ CM_RC=$OCF_SUCCESS
fi
diff --git a/pacemaker-1.1.18+20180430.b12c320f5.tar.xz b/pacemaker-1.1.18+20180430.b12c320f5.tar.xz
deleted file mode 100644
index bd16b47..0000000
--- a/pacemaker-1.1.18+20180430.b12c320f5.tar.xz
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:527dc034a5ab7c2a20c17aa10b3679debcd7d11eeabf2a736591e589fbb3f650
-size 3279084
diff --git a/pacemaker-2.0.0+20180726.3d81c89b8.tar.xz b/pacemaker-2.0.0+20180726.3d81c89b8.tar.xz
new file mode 100644
index 0000000..3bb73d4
--- /dev/null
+++ b/pacemaker-2.0.0+20180726.3d81c89b8.tar.xz
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:56b52533a269ecc9981042fe653de45b9ec5ae240bf3271d755047a561c47c95
+size 3253056
diff --git a/pacemaker-cts-StartCmd.patch b/pacemaker-cts-StartCmd.patch
index 403fc57..2500c42 100644
--- a/pacemaker-cts-StartCmd.patch
+++ b/pacemaker-cts-StartCmd.patch
@@ -1,13 +1,13 @@
-Index: pacemaker-1.1.18+20180104.7ba28d854/cts/patterns.py
+Index: pacemaker-1.1.18+20180430.c0d7ba798/cts/patterns.py
===================================================================
---- pacemaker-1.1.18+20180104.7ba28d854.orig/cts/patterns.py
-+++ pacemaker-1.1.18+20180104.7ba28d854/cts/patterns.py
-@@ -103,7 +103,7 @@ class crm_corosync(BasePatterns):
+--- pacemaker-1.1.18+20180430.c0d7ba798.orig/cts/patterns.py
++++ pacemaker-1.1.18+20180430.c0d7ba798/cts/patterns.py
+@@ -114,7 +114,7 @@ class crm_corosync(BasePatterns):
BasePatterns.__init__(self, name)
self.commands.update({
- "StartCmd" : "service corosync start && service pacemaker start",
+ "StartCmd" : "service pacemaker start",
- "StopCmd" : "service pacemaker stop; [ ! -e /usr/sbin/pacemaker_remoted ] || service pacemaker_remote stop; service corosync stop",
+ "StopCmd" : "service pacemaker stop; [ ! -e /usr/sbin/pacemaker-remoted ] || service pacemaker_remote stop; service corosync stop",
"EpochCmd" : "crm_node -e",
diff --git a/pacemaker.changes b/pacemaker.changes
index 1763652..7bbb4d6 100644
--- a/pacemaker.changes
+++ b/pacemaker.changes
@@ -1,3 +1,188 @@
+-------------------------------------------------------------------
+Fri Jul 27 14:19:11 UTC 2018 - ygao@suse.com
+
+- Update to version 2.0.0+20180726.3d81c89b8:
+- Shutdown corosync after a fatal error
+- tools: ipmiservicelogd FTBFS on ppc64le
+- tools: notifyServicelogEvent FTBFS on ppc64le
+- tools: detect CIB directory correctly
+- tools: avoid memory leak when crm_resource checks resource
+- controller: avoid any chance of use-of-NULL when doing LRM op
+- resources: controld doesn't need to check for corosync 1 plugin
+- resources: use correct variable name in Stateful
+- cts-scheduler: restore ability to pass arguments to single test run
+- resources: use ocf_is_true in SysInfo
+- spec: drop superfluous dependency of -libs-devel on -cts
+- tools: update URL in crm_simulate help
+- crm_mon: rhbz#1461964 - add fence history features
+
+-------------------------------------------------------------------
+Fri Jul 27 11:23:32 UTC 2018 - ygao@suse.com
+
+- Update to version 2.0.0+20180706.8cf3fe749 (Pacemaker-2.0.0):
+- tools: Multiple -V increase debug level (#1526)
+- scheduler: clarify multiple-anonymous-instances message
+- scheduler: avoid use-after-free when on-fail=block
+- controller: add node name to meta-data call environment
+- controller: filter certain synthesized failures from CIB
+- controller: filter certain action timeouts from CIB
+- controller: don't record pending notifies in CIB
+- executor: cancel recurring monitors if fence device registration is lost
+- controller: avoid memory leak if start-up fails
+- XML: schemas.c: fix possible memleak + less magic with numeric constants
+- tools: stonith_admin -h/-H options are queries
+- libstonithd: avoid memory leak when getting meta-data
+- XML: resources-3.1.rng: relaxed schema after tight upgrade enforcement
+- XML: schemas.c: take severities of XSLT messages into account properly
+- XML: assets/upgrade-2.10-htmldiff.xsl: express message severity visually
+- XML: upgrade-2.10{,-leave}.rng: distinguish message severity
+- XML: upgrade-2.10-roundtrip.xsl et al.: new tests incl. browser view
+- XML: upgrade-2.10.xsl: simplify thanks to diehard assumptions wrt. input
+- XML: upgrade-2.10-leave.xsl: post-upgrade output restoring stylesheet
+- XML: upgrade-2.10-enter.xsl: pre-upgrade input normalizing stylesheet
+- XML: schemas.c: implement & employ full round-trip apply_upgrade
+- XML: schemas.c: switch to using add_schema_by_version
+- XML: schemas.c: prepare the ground for unfold-transform-refold logic
+- XML: schemas.c: crm_schema_init: simplify for/break, call add_schema 1x
+- XML: schemas.c: shortcut upgrade transformation when not needed
+- st_client, stonith_admin: cleanup memory of stonith-history
+- XML: cib_ops.c: make use of cib_verbose flag for RNG/XSLT handling
+- XML: xml_internal.h: accept changing priority over particular chunks
+- CIB: no schema violating oversimplified patching with @id-ref
+- schemas.c: cleanup XSLT extension modules' data and whatnot
+- spec: move crm_node to -cli package
+- attrd: support removing node by ID
+- tools: query controller for crm_node -n
+- controller: add CRM_OP_NODE_INFO operation
+- xml.c: fix cleaning of own vs. XSLT's XML node's _private load
+- xml.c: properly "staticize" or drop eligible functions
+- scheduler: print to stdout when appropriate
+- tools: treat INFINITY correctly in crm_failcount
+- libcrmservice: support mount, path, and timer systemd unit types
+- libcrmcluster: avoid use-of-NULL when searching for remote node
+- spec: add procps-ng & psmisc dependencies as suitable
+- libcrmcommon: lower maximum IPC flush delay to 1.5 seconds
+- CTS: fix python3 usage
+- libstonithd: show error if agent not found for meta-data call
+- fencing: add stonith_admin --validate option
+- libstonithd: add client API for device validation
+- based_callbacks.c: restore -Werror buildability, avoid truncation
+- tools: handle stonith_admin exit codes better
+- tools: stonith_admin should print error if stonithd connection fails
+- tools: improve stonith meta-data error messages
+
+-------------------------------------------------------------------
+Mon Jun 4 12:36:13 UTC 2018 - ygao@suse.com
+
+- Update to version 1.1.18+20180531.63ff11d35:
+- scheduler: ensure orphaned recurring monitors have interval set
+- scheduler: improve action creation messages
+- XML: regression.sh + upgrade-2.10.xsl + test-2: browser-based test drive
+- XML: upgrade-2.10.xsl: use namespacing and/or modes for easier mash-ups
+- XML: regression.sh + upgrade-detail.xsl: fix minor cosmetic issues
+- scheduler: "requires" shouldn't apply to guest node fencing
+- libpe_status: handle "requires" properly for anonymous clones
+- scheduler: avoid unnecessary delay of start actions
+- scheduler: order implicit actions more strictly
+- all: prefer appropriate node when multiply active
+- libpe_status: find active instances properly according to requires
+- libpe_status: handle pending migrations correctly
+- tools: correctly check crm_resource --move for master role
+- scheduler: update wiki URL in log message
+- libcrmcommon: use proper IPC buffer size when reading
+- CIB manager: improve notification failure messages
+- liblrmd: improve TLS key reading
+- XML: upgrade-2.10.xsl: rsc op instance_attrs [2/2]: remaining meta attrs
+- XML: upgrade-2.10.xsl: rsc op instance_attrs [1/2]: meta-like requires
+- XML: upgrade-2.10.xsl: resource meta_attributes: in-situ exchange
+- XML: upgrade-2.10.xsl: simplify "should diagnostics be emitted" decision
+- XML: upgrade-2.10.xsl: related commits in "./regression.sh -X" output
+- XML: regression.sh + upgrade-2.10.xsl: remove commented out leftovers
+- XML: resources-3.0.rng: omit "isolation*" resource meta_attributes
+- XML: upgrade-2.10.xsl: normalize indentation of new rsc meta attributes
+- executor: give more detail when TLS handshake fails
+- fenced: be more paranoid about freeing memory
+- cts: use python2/3-compatible comparison
+
+-------------------------------------------------------------------
+Fri May 18 18:44:31 UTC 2018 - ygao@suse.com
+
+- Update to version 1.1.18+20180517.adf4d77b8:
+- spec: unify quoting in {pre,post}* scriptlets' action soliciting
+- spec: add a simple retention of pre-existing log move targets
+- libcrmcommon,libcrmcluster,liblrmd: recognize daemons under new names
+- XML: upgrade-2.10.xsl: resource meta_attributes: tweak diagnostic msg
+- XML: upgrade-2.10.xsl: re-apply on scheduler CTS test cases
+- XML: upgrade-2.10.xsl: resource meta_attributes: validity conformance
+
+-------------------------------------------------------------------
+Mon May 14 08:54:18 UTC 2018 - ygao@suse.com
+
+- Update to version 1.1.18+20180511.acd8ff5a7:
+- execd: avoid memory leak when testing remote key
+- cts-scheduler: avoid unsupported usage of requires
+- controld: avoid memory leak when synthesizing failure
+- XML: upgrade-2.10.xsl: resource meta_attributes: isolation* items
+- XML: upgrade-2.10.xsl: make diagnostics more direct wrt. context
+- XML: upgrade-2.10.xsl: remaining "marking" space with op meta_attributes
+- XML: upgrade-2.10.xsl: simplify 2/2: HelperIdentity, no INNER-RECURSION
+- XML: upgrade-2.10.xsl: simplify 1/2: resource instance_attributes
+- XML: regression.sh: avoid doubts when tests expected at stdin with '-'
+- XML: regression.sh: modularize "XSLT processor", allow substitutes
+- tools: improve error messages from crm_resource --move
+- tools: use output redirection correctly in crm_standby
+- tools: handle multiple values properly in crm_attribute
+- tools: bash portability issue in crm_failcount
+- libcrmservice: don't consider a cancelled recurring operation as failed
+- tools: cibsecret checks pacemaker-controld instead of crmd
+- tools: cibsecret --help/--version doesn't require cluster to be running (bsc#1102915)
+- spec: package cts-exec-helper with main package instead of -cli
+- spec: move old logs after upgrade
+- scheduler: improve failed op message
+- libcrmservice: find absolute paths when used with "service:"
+- libcrmservice: separate LSB-specific code into own source files
+- execd: handle systemd actions correctly when used with "service:"
+
+-------------------------------------------------------------------
+Wed May 9 10:48:06 UTC 2018 - ygao@suse.com
+
+- Update to version 1.1.18+20180504.70fe3d6e9:
+- all: take advantage of new libqb features
+- contoller,scheduler: guard hash table deletes
+- controller: don't abort after delay if we're no longer DC
+- libcrmcommon,pacemakerd: kernel task name is at most 15 characters
+- cts: install dummy systemd daemon via helper script
+- cts: externalize log watcher script
+- Maint: make systemctl react to pacemaker-remote as with underscored one
+- make some old daemon references traceable with "man -K OLDNAME"
+- io.c: restore -Werror buildability, put conversion specifier last
+
+-------------------------------------------------------------------
+Tue May 8 14:28:49 UTC 2018 - ygao@suse.com
+
+- Update to version 1.1.18+20180430.c0d7ba798:
+- libcrmcommon: avoid memory leak on failed IPC send
+- daemons: add configure option to create links at old daemon names
+- controld: rename "crmd-*" cluster options
+- all: change log file message format
+- daemons: improve connection loss messages
+- libcrmcommon: improve connection loss message
+- pacemaker_remote: correct documentation URL in systemd unit file
+- libcrmcommon: check file/directory writability better
+- spec: no more buildroot XML to modify
+- cib: rename cib daemon to pacemaker-based
+- cts-stonithd: rename cts-stonithd to cts-fencing
+- fenced: rename stonith-test to cts-fence-helper
+- fencing: rename stonithd to pacemaker-fenced
+- rename cts-pengine to cts-scheduler
+- pengine: rename pengine daemon to pacemaker-schedulerd
+- crmd: rename crmd daemon to pacemaker-controld
+- pacemaker-execd: rename pacemaker_remoted to pacemaker-remoted
+- rename cts-lrmd to cts-exec
+- pacemaker-execd: rename lrmd_test to cts-exec-helper
+- lrmd: rename lrmd daemon to pacemaker-execd
+- attrd: rename attrd daemon to pacemaker-attrd
+
-------------------------------------------------------------------
Wed May 2 12:48:53 UTC 2018 - ygao@suse.com
diff --git a/pacemaker.spec b/pacemaker.spec
index e237f15..cc380c4 100644
--- a/pacemaker.spec
+++ b/pacemaker.spec
@@ -62,6 +62,9 @@
## Add option to turn off hardening of libraries and daemon executables
%bcond_with hardening
+## Add option to disable links for legacy daemon names
+%bcond_without legacy_links
+
# Keep sane profiling data if requested
%if %{with profiling}
@@ -71,11 +74,11 @@
%endif
Name: pacemaker
-Version: 1.1.18+20180430.b12c320f5
+Version: 2.0.0+20180726.3d81c89b8
Release: 0
Summary: Scalable High-Availability cluster resource manager
# AGPL-3.0 licensed extra/clustermon.sh is not present in the binary
-License: GPL-2.0 and GPL-2.0+ and LGPL-2.1+
+License: GPL-2.0-only AND GPL-2.0-or-later AND LGPL-2.1-or-later
Group: Productivity/Clustering/HA
Url: http://www.clusterlabs.org
# Hint: use "spectool -s 0 pacemaker.spec" (rpmdevtools) to check the final URL:
@@ -187,6 +190,9 @@ Group: Productivity/Clustering/HA
Requires: libpacemaker3 = %{version}-%{release}
Requires: logrotate
Requires: perl-TimeDate
+Requires: procps
+Requires: psmisc
+Requires(post): coreutils
%description cli
Pacemaker is an advanced, scalable High-Availability cluster resource
@@ -227,6 +233,7 @@ Summary: Pacemaker remote daemon for non-cluster nodes
Group: Productivity/Clustering/HA
Requires: %{name}-cli = %{version}-%{release}
Requires: libpacemaker3 = %{version}-%{release}
+Requires: procps
Requires: resource-agents
%{?systemd_requires}
@@ -241,7 +248,6 @@ nodes not running the full corosync/cluster stack.
%package -n libpacemaker-devel
Summary: Pacemaker development package
Group: Development/Libraries/C and C++
-Requires: %{name}-cts = %{version}-%{release}
Requires: libpacemaker3 = %{version}-%{release}
Requires: libtool-ltdl-devel
Requires: pkgconfig
@@ -273,6 +279,8 @@ for developing tools for Pacemaker.
Summary: Test framework for cluster-related technologies
Group: Productivity/Clustering/HA
Requires: libpacemaker3 = %{version}-%{release}
+Requires: procps
+Requires: psmisc
Requires: python3
BuildArch: noarch
#Requires: python3-systemd
@@ -325,8 +333,6 @@ export LDFLAGS_HARDENED_LIB="%{?_hardening_ldflags}"
autoreconf -fvi
%configure \
- %{?with_profiling: --with-profiling} \
- %{?with_coverage: --with-coverage} \
--docdir=%{_docdir}/%{name} \
--disable-static \
--disable-silent-rules \
@@ -340,11 +346,14 @@ autoreconf -fvi
%if !%{enable_fatal_warnings}
--enable-fatal-warnings=no \
%endif
- %{!?with_doc: --with-brand=} \
- %{!?with_hardening: --disable-hardening} \
- %{?python_path: PYTHON=%{python_path}} \
- --with-initdir=%{_initddir} \
- --localstatedir=%{_var} \
+ %{?python_path: PYTHON=%{python_path}} \
+ %{!?with_hardening: --disable-hardening} \
+ %{!?with_legacy_links: --disable-legacy-links} \
+ %{?with_profiling: --with-profiling} \
+ %{?with_coverage: --with-coverage} \
+ %{!?with_doc: --with-brand=} \
+ --with-initdir=%{_initddir} \
+ --localstatedir=%{_var} \
--with-version=%{version}-%{release}
make %{?_smp_mflags} all
@@ -356,9 +365,6 @@ install -d -m755 %{buildroot}%{_fillupdir}
install -m 644 daemons/pacemakerd/pacemaker.sysconfig %{buildroot}%{_fillupdir}/sysconfig.pacemaker
install -m 644 tools/crm_mon.sysconfig %{buildroot}%{_fillupdir}/sysconfig.crm_mon
-# These are not actually scripts
-find %{buildroot} -name '*.xml' -type f -print0 | xargs -0 chmod a-x
-
# Don't package static libs
find %{buildroot} -type f -name "*.a" -delete -print
find %{buildroot} -type f -name "*.la" -delete -print
@@ -390,7 +396,7 @@ ln -s ../heartbeat/NodeUtilization %{buildroot}%{_libexecdir}/ocf/resource.d/pac
%check
# Prevent false positives in rpmlint
-./cts/cts-regression -V pengine cli 2>&1
+./cts/cts-regression -V scheduler cli 2>&1
%pre
%service_add_pre pacemaker.service
@@ -430,21 +436,20 @@ if [ ! -e %{_sysconfdir}/sysconfig/crm_mon ]; then
%fillup_only -n crm_mon
fi
+if [ "$1" -eq "2" ]; then
+ # Package upgrade, not initial install:
+ # Move any pre-2.0 logs to new location to ensure they get rotated
+ { mv -fbS.rpmsave %{_var}/log/pacemaker.log* %{_var}/log/pacemaker \
+ || mv -f %{_var}/log/pacemaker.log* %{_var}/log/pacemaker
+ } >/dev/null 2>/dev/null || :
+fi
+
%preun cli
%service_del_preun crm_mon.service
%postun cli
%service_del_postun crm_mon.service
-%post cts
-%service_add_post pacemaker-cts-dummyd@.service
-
-%preun cts
-%service_del_preun pacemaker-cts-dummyd@.service
-
-%postun cts
-%service_del_postun pacemaker-cts-dummyd@.service
-
%pre -n libpacemaker3
getent group %{gname} >/dev/null || groupadd -r %{gname} -g 189
getent passwd %{uname} >/dev/null || useradd -r -g %{gname} -u 189 -s /sbin/nologin -c "cluster user" %{uname}
@@ -465,13 +470,8 @@ if [ ! -e /tmp/.pcmk_regression_tests_ran ]; then
# Needed so that the shell doesn't get stuck on escape
# sequences
export TERM=dumb
- %{_datadir}/pacemaker/tests/cli/regression.sh || true
- %{_datadir}/pacemaker/tests/pengine/regression.sh -V || true
- echo Now running shell regression tests ; date
- if ! %{_datadir}/pacemaker/tests/shell/regression.sh ; then
- echo "Shell tests failed."
- cat crmtestout/regression.out
- fi
+ %{_datadir}/pacemaker/tests/cts-cli || true
+ %{_datadir}/pacemaker/tests/cts-scheduler -V || true
fi
%endif
@@ -483,24 +483,26 @@ fi
%{_unitdir}/pacemaker.service
%{_sbindir}/rcpacemaker
-%exclude %{_libexecdir}/pacemaker/lrmd_test
+%exclude %{_libexecdir}/pacemaker/cts-log-watcher
+%exclude %{_libexecdir}/pacemaker/cts-support
+%exclude %{_sbindir}/pacemaker-remoted
+%if %{with legacy_links}
%exclude %{_sbindir}/pacemaker_remoted
+%endif
%dir %{_libexecdir}/pacemaker
%{_libexecdir}/pacemaker/*
%{_sbindir}/cibsecret
-%{_sbindir}/crm_node
%{_sbindir}/fence_legacy
%{_sbindir}/stonith_admin
-%{_mandir}/man7/crmd.7%{ext_man}
-%{_mandir}/man7/pengine.7%{ext_man}
-%{_mandir}/man7/stonithd.7%{ext_man}
+%{_mandir}/man7/pacemaker-controld.7%{ext_man}
+%{_mandir}/man7/pacemaker-schedulerd.7%{ext_man}
+%{_mandir}/man7/pacemaker-fenced.7%{ext_man}
%{_mandir}/man7/ocf_pacemaker_controld.7%{ext_man}
%{_mandir}/man7/ocf_pacemaker_o2cb.7%{ext_man}
%{_mandir}/man7/ocf_pacemaker_remote.7%{ext_man}
%{_mandir}/man8/cibsecret.8%{ext_man}
-%{_mandir}/man8/crm_node.8%{ext_man}
%{_mandir}/man8/fence_legacy.8%{ext_man}
%{_mandir}/man8/pacemakerd.8%{ext_man}
%{_mandir}/man8/stonith_admin.8%{ext_man}
@@ -524,6 +526,7 @@ fi
%files cli
%defattr(-,root,root)
+%dir %attr (750, root, %{gname}) %{_sysconfdir}/pacemaker
%config(noreplace) %{_sysconfdir}/logrotate.d/pacemaker
%{_unitdir}/crm_mon.service
%{_sbindir}/rccrm_mon
@@ -535,6 +538,7 @@ fi
%{_sbindir}/crm_failcount
%{_sbindir}/crm_master
%{_sbindir}/crm_mon
+%{_sbindir}/crm_node
%{_sbindir}/crm_resource
%{_sbindir}/crm_standby
%{_sbindir}/crm_verify
@@ -549,7 +553,6 @@ fi
%exclude %{_datadir}/pacemaker/tests
%{_datadir}/pacemaker
%{_datadir}/snmp/mibs/PCMK-MIB.txt
-%{_libexecdir}/pacemaker/lrmd_test
%exclude %{_libexecdir}/ocf/resource.d/pacemaker/controld
%exclude %{_libexecdir}/ocf/resource.d/pacemaker/o2cb
@@ -562,18 +565,17 @@ fi
%config(noreplace) %{_fillupdir}/sysconfig.pacemaker
%config(noreplace) %{_fillupdir}/sysconfig.crm_mon
%{_mandir}/man7/*
-%exclude %{_mandir}/man7/crmd.*
-%exclude %{_mandir}/man7/pengine.*
-%exclude %{_mandir}/man7/stonithd.*
+%exclude %{_mandir}/man7/pacemaker-controld.*
+%exclude %{_mandir}/man7/pacemaker-schedulerd.*
+%exclude %{_mandir}/man7/pacemaker-fenced.*
%exclude %{_mandir}/man7/ocf_pacemaker_controld.*
%exclude %{_mandir}/man7/ocf_pacemaker_o2cb.*
%exclude %{_mandir}/man7/ocf_pacemaker_remote.*
%{_mandir}/man8/*
%exclude %{_mandir}/man8/cibsecret.*
-%exclude %{_mandir}/man8/crm_node.*
%exclude %{_mandir}/man8/fence_legacy.*
%exclude %{_mandir}/man8/pacemakerd.*
-%exclude %{_mandir}/man8/pacemaker_remoted.*
+%exclude %{_mandir}/man8/pacemaker-remoted.*
%exclude %{_mandir}/man8/stonith_admin.*
#%license licenses/GPLv2
@@ -613,8 +615,12 @@ fi
%defattr(-,root,root)
%{_unitdir}/pacemaker_remote.service
%{_sbindir}/rcpacemaker_remote
+
+%{_sbindir}/pacemaker-remoted
+%if %{with legacy_links}
%{_sbindir}/pacemaker_remoted
-%{_mandir}/man8/pacemaker_remoted.8%{ext_man}
+%endif
+%{_mandir}/man8/pacemaker-remoted.8%{ext_man}
#%license licenses/GPLv2
%doc COPYING ChangeLog
@@ -629,7 +635,10 @@ fi
%defattr(-,root,root)
%{python3_sitelib}/cts
%{_datadir}/pacemaker/tests
-%{_unitdir}/pacemaker-cts-dummyd@.service
+
+%{_libexecdir}/pacemaker/cts-log-watcher
+%{_libexecdir}/pacemaker/cts-support
+
#%license licenses/GPLv2
%doc COPYING ChangeLog