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