Accepting request 406455 from network:ha-clustering:Factory
- ping: Log sensible error when /tmp is full (bsc#987348) - crm_mon: Do not log errors for the known CIB changes that should be ignored (bsc#986931) - logging: Enable synchronous logging when blackboxes are enabled - libpengine: print target role and blocked status in XML output - tools: add maintenance mode and disabled/blocked resources to crm_mon XML/HTML output - tools: break up long lines in crm_mon console output - libservices: include socket units when listing all systemd agents - fencing: fence_legacy - Search capable devices by querying them through "list" action for cluster-glue stonith agents (bsc#986265) - extra: correct quoting of timestamp-format in alert-snmp-example - pengine,tools: Display pending resource state by default when it's available (bsc#986201) - rng: Allow rsc-pattern in locations for version 2.6 - pengine: Expand regexp references in location constraints - pengine: Allow to set base score for progressive node health strategy - systemd: Allow unit names ending in .socket. - watchdog: Correction to do to change action of the system reboot by fail_fast - Upstream version cs: 630d0d112092042b6f79c2a02bb442e82fee93ec - Remove conditionals that are not really needed as they always kept the values - Remove the cman conditional as we do not even have the dependencies to build with it in OBS - Convert deps to pkgconfig style ones and remove deps that are not mentioned by the testsuite or the configure.ac - Update to version 1.1.15 - crmd: mention that graceful remote shutdowns may cause connection failures (bsc#981489) - alerts - drop 5min timeout to 30s since it is configurable now - Bug bz#5292 - crmd: wait for alerts to finish - libais,libcluster,libcrmcommon,liblrmd: don't use %z specifier - alerts: ensure sample alert agents handle undefined recipient OBS-URL: https://build.opensuse.org/request/show/406455 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=101
This commit is contained in:
commit
8fe752f878
6
_service
6
_service
@ -8,10 +8,10 @@
|
||||
To update to a new release, change "revision" to the desired
|
||||
git commit hash and bump "version" if necessary
|
||||
|
||||
<param name="version">1.1.14</param>
|
||||
<param name="version">1.1.15</param>
|
||||
-->
|
||||
<param name="versionformat">1.1.14+git%cd.%h</param>
|
||||
<param name="revision">389294fd1ebefddad67fff51306f585b758ca860</param>
|
||||
<param name="versionformat">1.1.15+git%cd.%h</param>
|
||||
<param name="revision">630d0d112092042b6f79c2a02bb442e82fee93ec</param>
|
||||
</service>
|
||||
|
||||
<service name="recompress" mode="disabled">
|
||||
|
@ -1,23 +1,19 @@
|
||||
commit f61b9889cd169ce2c715a5cc4808321977432ec0
|
||||
commit c199dc320b4faa01c19df68a9f2566465f5afa2c
|
||||
Author: Gao,Yan <ygao@suse.com>
|
||||
Date: Sun May 29 20:31:25 2016 +0200
|
||||
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
|
||||
|
||||
diff --git a/extra/resources/controld b/extra/resources/controld
|
||||
index 7d75319..908e2ca 100644
|
||||
index ddb514a..37d5c62 100644
|
||||
--- a/extra/resources/controld
|
||||
+++ b/extra/resources/controld
|
||||
@@ -229,13 +229,9 @@ controld_monitor() {
|
||||
|
||||
case $rc in
|
||||
0) smw=$(dlm_tool status -v | grep "stateful_merge_wait=" | cut -d= -f2)
|
||||
- if [ $smw -eq 1 ]; then
|
||||
+ if [ "$smw" = "1" ]; then
|
||||
@@ -232,10 +232,6 @@ controld_monitor() {
|
||||
if [ -n "$smw" ] && [ $smw -eq 1 ]; then
|
||||
ocf_log err "DLM status is: stateful_merge_wait"
|
||||
rc=$OCF_ERR_GENERIC
|
||||
- elif [ -z "$smw" ] && dlm_tool ls | grep -q "wait fencing" && \
|
||||
- ! stonith_admin -H -V | grep -q "wishes to"; then
|
||||
- ! stonith_admin -H '*' -V | grep -q "wishes to"; then
|
||||
- ocf_log err "DLM status is: wait fencing"
|
||||
- rc=$OCF_ERR_GENERIC
|
||||
else
|
||||
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:4d0c26d5c57607cf4368187f4b68e0e3549085305baa4c1c69ccb452ff06701e
|
||||
size 3820078
|
3
pacemaker-1.1.15+git20160701.630d0d1.tar.bz2
Normal file
3
pacemaker-1.1.15+git20160701.630d0d1.tar.bz2
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:9587853126135f54777779084e9ea2946536d02a6e06b93695ee215d4c535179
|
||||
size 3844245
|
@ -1,3 +1,121 @@
|
||||
-------------------------------------------------------------------
|
||||
Fri Jul 1 23:10:54 UTC 2016 - ygao@suse.com
|
||||
|
||||
- ping: Log sensible error when /tmp is full (bsc#987348)
|
||||
- crm_mon: Do not log errors for the known CIB changes that should be ignored (bsc#986931)
|
||||
- logging: Enable synchronous logging when blackboxes are enabled
|
||||
- libpengine: print target role and blocked status in XML output
|
||||
- tools: add maintenance mode and disabled/blocked resources to crm_mon XML/HTML output
|
||||
- tools: break up long lines in crm_mon console output
|
||||
- libservices: include socket units when listing all systemd agents
|
||||
- fencing: fence_legacy - Search capable devices by querying them through "list" action for cluster-glue stonith agents (bsc#986265)
|
||||
- extra: correct quoting of timestamp-format in alert-snmp-example
|
||||
- pengine,tools: Display pending resource state by default when it's available (bsc#986201)
|
||||
- rng: Allow rsc-pattern in locations for version 2.6
|
||||
- pengine: Expand regexp references in location constraints
|
||||
- pengine: Allow to set base score for progressive node health strategy
|
||||
- systemd: Allow unit names ending in .socket.
|
||||
- watchdog: Correction to do to change action of the system reboot by fail_fast
|
||||
- Upstream version cs: 630d0d112092042b6f79c2a02bb442e82fee93ec
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jun 30 13:16:25 UTC 2016 - tchvatal@suse.com
|
||||
|
||||
- Remove conditionals that are not really needed as they always kept
|
||||
the values
|
||||
- Remove the cman conditional as we do not even have the dependencies
|
||||
to build with it in OBS
|
||||
- Convert deps to pkgconfig style ones and remove deps that are
|
||||
not mentioned by the testsuite or the configure.ac
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jun 22 12:25:47 UTC 2016 - ygao@suse.com
|
||||
|
||||
- Update to version 1.1.15
|
||||
- crmd: mention that graceful remote shutdowns may cause connection failures (bsc#981489)
|
||||
- alerts - drop 5min timeout to 30s since it is configurable now
|
||||
- Bug bz#5292 - crmd: wait for alerts to finish
|
||||
- libais,libcluster,libcrmcommon,liblrmd: don't use %z specifier
|
||||
- alerts: ensure sample alert agents handle undefined recipient
|
||||
- tools: crm_resource -T option should not be hidden anymore
|
||||
- PE: Correctly update the dependant actions of un-runnable clones
|
||||
- alerts: make timestamp-format-string work properly if strftime-escape is the last character
|
||||
- extra: make alert-file-example cope with spaces in timeformat-string
|
||||
- attrd,ipc: Prevent possible segfault on exit (bsc#986056)
|
||||
- alerts: fix SMTP recipient defaulting
|
||||
- tools: properly handle crm_resource --restart with a resource in a group
|
||||
- tools: don't assume all resources restart on same node with crm_resource --restart
|
||||
- tools: avoid memory leaks in crm_resource --restart
|
||||
- tools: remember any existing target-role when doing crm_resource --restart
|
||||
- tools: correctly count starting resources when doing crm_resource --restart
|
||||
- Upstream version cs: e174ec84857e087210b9dacee3318f8203176129 (Pacemaker-1.1.15)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Jun 14 11:35:04 UTC 2016 - tchvatal@suse.com
|
||||
|
||||
- Clean-up with spec-cleaner
|
||||
- Drop heartbeat conditions, no heartbeat around
|
||||
- Sort CMAN conditionals to be actually logical
|
||||
- Run fdupes to not waste so much space
|
||||
- Add logrotate to reqs of pacemaker-cli
|
||||
- Cleanup rpmlintrc to contain only bare needed minimum
|
||||
- Run basic sanity check in %check phase
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Jun 14 11:09:45 UTC 2016 - tchvatal@suse.com
|
||||
|
||||
- Drop sysvinit support we now run on sle12+ only
|
||||
- Cleanup the define conditionals that are never used
|
||||
- Drop profiling and coverage options it is not enabled by default
|
||||
and better to run separately
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 13 10:31:52 UTC 2016 - ygao@suse.com
|
||||
|
||||
- libcrmcommon: really ensure crm_time_t structure is fully initialized by API calls
|
||||
- extra: correct syntax error in sample alert script
|
||||
- crmd: avoid timeout on older peers when cancelling a resource operation
|
||||
- crmd: use proper resource agent name when caching metadata
|
||||
- crmd: avoid memory leak when sending fencing alert
|
||||
- liblrmd: avoid memory leak when closing or deleting lrmd connections
|
||||
- extra: improve determination of successful monitors in SNMP alert script
|
||||
- tools: avoid memory leak when crm_mon unpacks constraints
|
||||
- pengine: avoid use-after-free with location constraint + sets + templates
|
||||
- pengine: better error handling when unpacking sets in location constraints
|
||||
- pengine: avoid memory leak when invalid constraint involves set
|
||||
- Build: rename sample alert scripts and install them in datadir
|
||||
- pengine : Correction of the record judgment of the failed information.
|
||||
- Upstream version cs: dd46368eead0d756735216a4bc765466b99274fc
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Jun 7 08:40:25 UTC 2016 - ygao@suse.com
|
||||
|
||||
- alert-helpers: some fixes in pcmk_smtp_helper.sh
|
||||
- libpengine: log message when stonith disabled, not enabled
|
||||
- pengine: only set unfencing constraints once
|
||||
- tools: don't require node to be known to crm_resource when deleting attribute
|
||||
- libcrmcommon: ensure crm_time_t structure is fully initialized by API calls
|
||||
- attrd: don't leak memory when returning due to malformed update request
|
||||
- crmd: always free result of crm_itoa()
|
||||
- xml: adapt crm_mon.rng per recent reorder of the summary elements
|
||||
- Upstream version cs: 1a05449500f015414b6df68b6d4feb64b713f533
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Jun 3 12:07:19 UTC 2016 - ygao@suse.com
|
||||
|
||||
- Rebase:
|
||||
* bug-977201_pacemaker-controld-self-fencing.patch
|
||||
|
||||
- pengine: properly order stop actions relative to stonith
|
||||
- crm_resource: don't pretend that target-role:started would prevent promotion
|
||||
- crm_mon: consistently print ms resource state
|
||||
- controld: use "stonith_admin -H '*' -V" (bsc#977201)
|
||||
- stonith_admin: allow -H '*' to show history for all nodes (bsc#977201)
|
||||
- controld: fix "[: -eq: unary operator expected" issue from PR 1022 (bsc#977201)
|
||||
- extra: Support of the task designation of a resource and the fencing.
|
||||
- extra: Change pcmk_snmp_helper.sh (2).
|
||||
- Upstream version cs: 6a8c1e9d35c65cbfd4019cfe797cb7bb9dfd4322
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun May 29 20:06:12 UTC 2016 - ygao@suse.com
|
||||
|
||||
@ -12,8 +130,8 @@ Sun May 29 14:44:18 UTC 2016 - ygao@suse.com
|
||||
- crmd: Acknowledge cancellation operations for remote connection resources (bsc#976865)
|
||||
- controld: improve DLM check with stateful_merge_wait (bsc#977201)
|
||||
- attrd, libcrmcommon: validate attrd requests better
|
||||
- crmd: clear remote node transient attributes on disconnect
|
||||
- Revert "Fix: attrd: Correctly implement mass removal of a node's attributes"
|
||||
- crmd: clear remote node transient attributes on disconnect (bsc#981489)
|
||||
- Revert "Fix: attrd: Correctly implement mass removal of a node's attributes" (bsc#981489)
|
||||
- crm_mon: Fix time formatting on x32
|
||||
- resources: use OCF version tagging correctly
|
||||
- libcommon: crm_procfs_pid_of() would always return last /proc entry checked
|
||||
@ -44,7 +162,7 @@ Wed May 4 10:38:16 UTC 2016 - ygao@suse.com
|
||||
- pengine: Organize order of actions for master resources in anti-colocations (bsc#977800)
|
||||
- pengine: Respect asymmetrical ordering when trying to move resources (bsc#977675)
|
||||
- fencing: Record the last known names of nodes to make sure fencing requested with nodeid works (bsc#974108)
|
||||
- crmd: first implementation of integrated multi-agent, multi-target alerting mechanism
|
||||
- crmd: first implementation of integrated multi-agent, multi-target alerting mechanism (fate#320855)
|
||||
- ping resource: Use fping6 for IPv6 hosts (bsc#976271)
|
||||
- pengine: Consider resource failed if any of the configured monitor operations failed (bsc#972187)
|
||||
- ping resource: avoid undefined func w/ OCF_FUNCTIONS=/dev/null
|
||||
@ -134,8 +252,8 @@ Thu Feb 11 13:28:13 UTC 2016 - ygao@suse.com
|
||||
- crmd: Prevent potential use-after-free (bsc#964183)
|
||||
- liblrmd: Prevent potential use-after-free issues (bsc#964183)
|
||||
- PE: Fix conditions for internal sanity check (bsc#971129)
|
||||
- attrd: ensure remote nodes are in correct peer cache
|
||||
- crmd: set remote flag when gracefully shutting down remote nodes
|
||||
- attrd: ensure remote nodes are in correct peer cache (bsc#981489)
|
||||
- crmd: set remote flag when gracefully shutting down remote nodes (bsc#981489)
|
||||
- fencing: Correctly track active stonith actions (bsc#938545)
|
||||
- fencing: Functionize adding and removing active pids of device (bsc#938545)
|
||||
- crm_shadow: Do not invoke shells with --noprofile option other than bash (bsc#961392)
|
||||
@ -147,13 +265,13 @@ Thu Feb 11 13:28:13 UTC 2016 - ygao@suse.com
|
||||
- spec: C++ compiler is not something currently needed
|
||||
- RHBZ#1286316: Do an ordered shutdown of systemd resources
|
||||
- header == NULL when parsing compressed message
|
||||
- attrd: Correctly implement mass removal of a node's attributes
|
||||
- attrd: Correctly implement mass removal of a node's attributes (bsc#981489)
|
||||
- attrd: Hook up the client name so we can track requests
|
||||
- crmd: Set the shutdown transient attribute in response to LRMD_IPC_OP_SHUTDOWN_REQ from remote nodes
|
||||
- PE: Honor the shutdown transient attributes for remote nodes
|
||||
- pacemaker_remote: support graceful stops
|
||||
- crmd: support graceful pacemaker_remote stops
|
||||
- lrmd,liblrmd: add lrmd IPC operations for requesting and acknowledging shutdown
|
||||
- crmd: Set the shutdown transient attribute in response to LRMD_IPC_OP_SHUTDOWN_REQ from remote nodes (bsc#981489)
|
||||
- PE: Honor the shutdown transient attributes for remote nodes (bsc#981489)
|
||||
- pacemaker_remote: support graceful stops (bsc#981489)
|
||||
- crmd: support graceful pacemaker_remote stops (bsc#981489)
|
||||
- lrmd,liblrmd: add lrmd IPC operations for requesting and acknowledging shutdown (bsc#981489)
|
||||
- fencing: Support concurrent fencing actions on each device (bsc#938545)
|
||||
- pengine: Support concurrent fencing (bsc#938545)
|
||||
- Upstream version cs: c54f10440a7bba5a1491ea8506925c7d6d9ca2a3
|
||||
@ -272,7 +390,7 @@ Thu Oct 8 10:29:54 UTC 2015 - ygao@suse.com
|
||||
- crmd: properly detect CIB update failures for remote nodes
|
||||
- cibadmin: Prevent potential use-of-NULL in print_xml_output() (bsc#947180)
|
||||
- Fencing: The device list is expected to be comma separated
|
||||
- Tools: Do not send command lines to syslog
|
||||
- Tools: Do not send command lines to syslog (bsc#986676)
|
||||
- Tools: Repair the logging of 'interesting' command-lines
|
||||
- PE: resolve memory leak
|
||||
- libfencing: make topology level removal compatible with latest stonithd API
|
||||
@ -676,7 +794,7 @@ Fri Feb 27 09:44:50 UTC 2015 - ygao@suse.com
|
||||
- properly record stop args after reload
|
||||
- pengine: Do not reschedule monitors that are no longer needed while resource definitions have changed (bsc#914761)
|
||||
- Build: Fix building when heartbeat support is disabled
|
||||
- fencing: cl#5134 - Support random fencing delay to avoid double fencing (FATE#317136, FATE#318381)
|
||||
- fencing: cl#5134 - Support random fencing delay to avoid double fencing (FATE#317136, FATE#318381, bsc#970733)
|
||||
- extra: Use crm_simulate for the showscores script
|
||||
- attrd: refresh should force an immediate write-out of all attributes
|
||||
- service: Leave synchronous calls to be free'd by the caller
|
||||
@ -861,7 +979,7 @@ Fri Oct 17 12:55:03 UTC 2014 - ygao@suse.com
|
||||
- crmd: properly update job limit for baremetal remote-nodes
|
||||
- crmd: Remote-node throttle jobs count towards cluster-node hosting conneciton rsc
|
||||
- crmd: Ensure throttle_mode() does something on Linux
|
||||
- systemd: Perform actions asynchronously
|
||||
- systemd: Perform actions asynchronously (bsc#956500)
|
||||
- crm_attribute: Correctly update config options when -o crm_config is specified
|
||||
- crmd: Fixes crash when remote connection migration fails
|
||||
- pengine: fixes segfault caused by malformed log warning
|
||||
|
@ -1,16 +1,4 @@
|
||||
#addFilter(".*")
|
||||
addFilter("script-without-shebang /usr/share/pacemaker/.*\.rng")
|
||||
addFilter("script-without-shebang /usr/share/pacemaker/.*\.dtd")
|
||||
addFilter("script-without-shebang /usr/share/pacemaker/.*\.xsl")
|
||||
#addFilter("script-without-shebang /usr/share/pacemaker/cts/")
|
||||
addFilter("non-executable-script /usr/share/pacemaker/cts/")
|
||||
#addFilter("non-utf8-spec-file heartbeat.spec")
|
||||
addFilter("no-version-in-last-changelog")
|
||||
addFilter("shlib-policy-missing-suffix")
|
||||
addFilter("source-or-patch-not-bzipped")
|
||||
#addFilter("missing-dependency-to-cron")
|
||||
#addFilter("no-prereq-on pwdutils")
|
||||
#addFilter("no-packager-tag")
|
||||
|
||||
# Debug packages take care of this
|
||||
addFilter("unstripped-binary-or-object")
|
||||
|
634
pacemaker.spec
634
pacemaker.spec
@ -19,130 +19,30 @@
|
||||
%global gname haclient
|
||||
%global uname hacluster
|
||||
%global pcmk_docdir %{_docdir}/%{name}
|
||||
|
||||
%global specversion 1
|
||||
%global pcmkversion 1.1.14+git20160527.389294f
|
||||
# set following to the actual commit or, for final release, concatenate
|
||||
# "pcmkversion" macro to "Pacemaker-" (will yield a tag per the convention)
|
||||
%global commit HEAD
|
||||
%global lparen (
|
||||
%global rparen )
|
||||
%global shortcommit %(c=%{commit}; case ${c} in
|
||||
Pacemaker-*%{rparen} echo ${c:10};;
|
||||
*%{rparen} echo ${c:0:7};; esac)
|
||||
%global pre_release %(s=%{shortcommit}; [ ${s: -4:3} != -rc ]; echo $?)
|
||||
%global post_release %([ %{commit} = Pacemaker-%{shortcommit} ]; echo $?)
|
||||
%global github_owner ClusterLabs
|
||||
|
||||
# Turn off the auto compilation of python files not in the site-packages directory
|
||||
# Needed so that the -devel package is multilib compliant
|
||||
%global __os_install_post %(echo '%{__os_install_post}' | sed -e 's!/usr/lib[^[:space:]]*/brp-python-bytecompile[[:space:]].*$!!g')
|
||||
|
||||
#%global rawhide %(test ! -e /etc/yum.repos.d/fedora-rawhide.repo; echo $?)
|
||||
%global rawhide 0
|
||||
#%%global cs_version %%(pkg-config corosync --modversion | awk -F . '{print $1}')
|
||||
%global cs_version 2
|
||||
# It has to be eventually decided whether to use Python2 or Python3
|
||||
%global py_site %{?python_sitearch}%{!?python_sitearch:%(python -c "from distutils.sysconfig import get_python_lib; print(get_python_lib(1))")}
|
||||
%global cman_native 0%{?el6} || (0%{?fedora} > 0 && 0%{?fedora} < 17)
|
||||
|
||||
# It's desired to apply "license" macro uniformly in "files" sections below,
|
||||
# but RPM versions not aware of this new classification normally (re)define it
|
||||
# to the value of "License:", so following is to ensure the macro definition
|
||||
# is per expectation only after that tag; solution courtesy of Jason Tibbitts:
|
||||
# https://pkgs.fedoraproject.org/cgit/rpms/epel-rpm-macros.git/tree/macros.zzz-epel?h=el6&id=e1adcb77b0c05a6c29bc0eb0c4e82113180a0a99#n12
|
||||
%if !%{defined _licensedir}
|
||||
%define description %{lua:
|
||||
rpm.define("license %doc")
|
||||
print("%description")
|
||||
}
|
||||
%endif
|
||||
|
||||
# Conditionals
|
||||
# Invoke "rpmbuild --without <feature>" or "rpmbuild --with <feature>"
|
||||
# to disable or enable specific features
|
||||
|
||||
# Legacy stonithd fencing agents
|
||||
%bcond_with stonithd
|
||||
%define with_stonithd 1
|
||||
|
||||
# Build with/without support for profiling tools
|
||||
%bcond_with profiling
|
||||
|
||||
# Include Build with/without support for performing coverage analysis
|
||||
%bcond_with coverage
|
||||
|
||||
# We generate docs using Publican, Asciidoc and Inkscape, but they're not available everywhere
|
||||
%bcond_without doc
|
||||
%define with_doc 0
|
||||
|
||||
# Use a different versioning scheme
|
||||
%bcond_with pre_release
|
||||
|
||||
# Ship an Upstart job file
|
||||
%bcond_with upstart_job
|
||||
|
||||
# Turn off cman support on platforms that normally ship with it
|
||||
%bcond_without cman
|
||||
|
||||
%if %{with profiling}
|
||||
# This disables -debuginfo package creation and also the stripping binaries/libraries
|
||||
# Useful if you want sane profiling data
|
||||
%global debug_package %{nil}
|
||||
%endif
|
||||
|
||||
%if %{with pre_release} || 0%{pre_release}
|
||||
%if 0%{pre_release}
|
||||
%global pcmk_release 0.%{specversion}.%(s=%{shortcommit}; echo ${s: -3})
|
||||
%else
|
||||
%global pcmk_release 0.%{specversion}.%{shortcommit}.git
|
||||
%endif
|
||||
%else
|
||||
%if 0%{post_release}
|
||||
%global pcmk_release %{specversion}.%{shortcommit}.git
|
||||
%else
|
||||
%global pcmk_release %{specversion}
|
||||
%endif
|
||||
%endif
|
||||
|
||||
#%if 0%{?suse_version}
|
||||
#%define _libexecdir %{_libdir}
|
||||
#%endif
|
||||
|
||||
%define with_corosync_support 1
|
||||
%define with_heartbeat_support 0
|
||||
|
||||
%define with_nagios 1
|
||||
%define with_snmp 1
|
||||
%define with_esmtp 1
|
||||
%define with_acl 1
|
||||
%define with_cibsecrets 1
|
||||
|
||||
%define enable_lib_cluster_pkg 0
|
||||
%define enable_fatal_warnings 1
|
||||
|
||||
%define enable_fatal_warnings 0
|
||||
%define with_regression_tests 0
|
||||
|
||||
%if ! %{defined _rundir}
|
||||
%define _rundir %{_localstatedir}/run
|
||||
%endif
|
||||
|
||||
# Conditionals
|
||||
# Invoke "rpmbuild --without <feature>" or "rpmbuild --with <feature>"
|
||||
# to disable or enable specific features
|
||||
# Legacy stonithd fencing agents
|
||||
%bcond_without stonithd
|
||||
# We generate docs using Publican, Asciidoc and Inkscape, but they're not available everywhere
|
||||
%bcond_with doc
|
||||
Name: pacemaker
|
||||
Summary: Scalable High-Availability cluster resource manager
|
||||
%if %{defined _unitdir}
|
||||
License: GPL-2.0 and GPL-2.0+ and LGPL-2.1+
|
||||
%else
|
||||
# initscript is Revised BSD
|
||||
License: GPL-2.0 and GPL-2.0+ and LGPL-2.1+ and BSD-3-Clause
|
||||
%endif
|
||||
# AGPL-3.0 licensed extra/clustermon.sh is not present in the binary
|
||||
Group: Productivity/Clustering/HA
|
||||
Version: %{pcmkversion}
|
||||
Version: 1.1.15+git20160701.630d0d1
|
||||
Release: 0
|
||||
#Release: %{pcmk_release}%{?dist}
|
||||
Summary: Scalable High-Availability cluster resource manager
|
||||
License: GPL-2.0 and GPL-2.0+ and LGPL-2.1+
|
||||
Group: Productivity/Clustering/HA
|
||||
# AGPL-3.0 licensed extra/clustermon.sh is not present in the binary
|
||||
Url: http://www.clusterlabs.org
|
||||
|
||||
#Source0: https://github.com/%{github_owner}/%{name}/archive/%{commit}/%{name}-%{shortcommit}.tar.gz
|
||||
# eg. https://github.com/ClusterLabs/pacemaker/archive/8ae45302394b039fb098e150f156df29fc0cb576/pacemaker-8ae4530.tar.gz
|
||||
Source0: %{name}-%{version}.tar.bz2
|
||||
Source1: crm_report.in
|
||||
Source100: pacemaker.rpmlintrc
|
||||
@ -155,137 +55,81 @@ Patch6: bug-812269_pacemaker-fencing-device-register-messages.patch
|
||||
Patch7: pacemaker-Wno-format-signedness.patch
|
||||
Patch8: bug-943295_pacemaker-lrmd-log-notice.patch
|
||||
Patch9: bug-977201_pacemaker-controld-self-fencing.patch
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
Provides: pacemaker-ticket-support = 2.0
|
||||
Conflicts: heartbeat < 3.0
|
||||
Conflicts: libheartbeat2 < 3.0.0
|
||||
# Required for core functionality (python-devel depends on python)
|
||||
BuildRequires: autoconf
|
||||
BuildRequires: automake
|
||||
BuildRequires: bison
|
||||
BuildRequires: fdupes
|
||||
BuildRequires: flex
|
||||
BuildRequires: help2man
|
||||
BuildRequires: libtool
|
||||
BuildRequires: ncurses-devel
|
||||
BuildRequires: pam-devel
|
||||
BuildRequires: pkgconfig
|
||||
BuildRequires: python
|
||||
# Required for agent_config.h which specifies the correct scratch directory
|
||||
BuildRequires: resource-agents
|
||||
BuildRequires: pkgconfig(bzip2)
|
||||
BuildRequires: pkgconfig(corosync)
|
||||
BuildRequires: pkgconfig(dbus-1)
|
||||
BuildRequires: pkgconfig(glib-2.0)
|
||||
BuildRequires: pkgconfig(gnutls)
|
||||
BuildRequires: pkgconfig(libexslt)
|
||||
# We need reasonably recent versions of libqb
|
||||
BuildRequires: pkgconfig(libqb) > 0.11.0
|
||||
BuildRequires: pkgconfig(libxml-2.0)
|
||||
BuildRequires: pkgconfig(libxslt)
|
||||
BuildRequires: pkgconfig(python)
|
||||
BuildRequires: pkgconfig(systemd)
|
||||
BuildRequires: pkgconfig(uuid)
|
||||
Requires: %{name}-cli = %{version}-%{release}
|
||||
Requires: corosync
|
||||
Requires: libpacemaker3 = %{version}-%{release}
|
||||
%if %{enable_lib_cluster_pkg}
|
||||
Requires: libpacemaker3-cluster = %{version}-%{release}
|
||||
%endif
|
||||
Requires: libqb > 0.11.0
|
||||
Requires: psmisc
|
||||
Requires: python
|
||||
Requires: resource-agents
|
||||
Recommends: crmsh
|
||||
Recommends: libdlm
|
||||
Recommends: fence-agents
|
||||
Recommends: libdlm
|
||||
Recommends: sbd
|
||||
Suggests: graphviz
|
||||
|
||||
%if %{defined systemd_requires}
|
||||
%systemd_requires
|
||||
Conflicts: heartbeat < 3.0
|
||||
Conflicts: libheartbeat2 < 3.0.0
|
||||
Provides: pacemaker-ticket-support = 2.0
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
%{?systemd_requires}
|
||||
%if %{enable_lib_cluster_pkg}
|
||||
Requires: libpacemaker3-cluster = %{version}-%{release}
|
||||
%endif
|
||||
|
||||
%if 0%{?rhel} > 0
|
||||
ExclusiveArch: i386 i686 x86_64
|
||||
%endif
|
||||
|
||||
# Required for core functionality (python-devel depends on python)
|
||||
BuildRequires: autoconf
|
||||
BuildRequires: automake
|
||||
BuildRequires: pkgconfig(glib-2.0)
|
||||
|
||||
%if 0%{?suse_version}
|
||||
BuildRequires: libbz2-devel
|
||||
%else
|
||||
BuildRequires: bzip2-devel
|
||||
%endif
|
||||
|
||||
BuildRequires: libtool
|
||||
BuildRequires: libtool-ltdl-devel
|
||||
BuildRequires: libuuid-devel
|
||||
BuildRequires: libxml2-devel
|
||||
BuildRequires: libxslt-devel
|
||||
BuildRequires: pam-devel
|
||||
BuildRequires: pkgconfig
|
||||
BuildRequires: python
|
||||
BuildRequires: python-devel
|
||||
|
||||
# Required for agent_config.h which specifies the correct scratch directory
|
||||
BuildRequires: resource-agents
|
||||
|
||||
# We need reasonably recent versions of libqb
|
||||
BuildRequires: libqb-devel > 0.11.0
|
||||
Requires: libqb > 0.11.0
|
||||
|
||||
# Enables optional functionality
|
||||
BuildRequires: bison
|
||||
#BuildRequires: byacc
|
||||
BuildRequires: pkgconfig(dbus-1)
|
||||
|
||||
%if 0%{?suse_version} > 1100
|
||||
BuildRequires: docbook-xsl-stylesheets
|
||||
%else
|
||||
BuildRequires: docbook-style-xsl
|
||||
%endif
|
||||
|
||||
BuildRequires: flex
|
||||
|
||||
%if 0%{?suse_version} > 1210
|
||||
BuildRequires: libgnutls-devel
|
||||
%else
|
||||
BuildRequires: gnutls-devel
|
||||
%endif
|
||||
|
||||
BuildRequires: help2man
|
||||
BuildRequires: libselinux-devel
|
||||
BuildRequires: ncurses-devel
|
||||
BuildRequires: openssl-devel
|
||||
|
||||
BuildRequires: pkgconfig(systemd)
|
||||
|
||||
%if %{with cman} && %{cman_native}
|
||||
BuildRequires: clusterlib-devel
|
||||
# pacemaker initscript: cman initscript, fence_tool (+ some soft-dependencies)
|
||||
# "post" scriptlet: ccs_update_schema
|
||||
Requires: cman
|
||||
%endif
|
||||
|
||||
%if %with_corosync_support
|
||||
Requires: corosync
|
||||
#BuildRequires: corosynclib-devel
|
||||
BuildRequires: libcorosync-devel
|
||||
%endif
|
||||
|
||||
%if %with_heartbeat_support
|
||||
BuildRequires: heartbeat-devel
|
||||
Requires: heartbeat
|
||||
%endif
|
||||
|
||||
#%if %{with stonithd}
|
||||
%if %{with_stonithd}
|
||||
#BuildRequires: cluster-glue-libs-devel
|
||||
%if %{with stonithd}
|
||||
%if 0%{?suse_version}
|
||||
BuildRequires: libglue-devel
|
||||
%else
|
||||
BuildRequires: cluster-glue-libs-devel
|
||||
%endif
|
||||
|
||||
%if !0%{?rawhide}
|
||||
# More often than not, inkscape is busted on rawhide, don't even bother
|
||||
|
||||
#%if %{with doc}
|
||||
%if %{with_doc}
|
||||
%ifarch %{ix86} x86_64
|
||||
%endif
|
||||
%if %{with doc}
|
||||
BuildRequires: asciidoc
|
||||
BuildRequires: inkscape
|
||||
BuildRequires: publican
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%if %with_snmp
|
||||
%if %{with_snmp}
|
||||
BuildRequires: net-snmp-devel
|
||||
%endif
|
||||
|
||||
%if %with_esmtp
|
||||
%if %{with_esmtp}
|
||||
BuildRequires: libesmtp-devel
|
||||
%endif
|
||||
|
||||
%if %with_regression_tests
|
||||
%if %{with_regression_tests}
|
||||
BuildRequires: procps
|
||||
BuildRequires: python-curses
|
||||
BuildRequires: python-xml
|
||||
BuildRequires: vim-base
|
||||
%endif
|
||||
|
||||
%endif
|
||||
|
||||
%description
|
||||
@ -299,13 +143,11 @@ It will run scripts at initialization, when machines go up or down,
|
||||
when related resources fail and can be configured to periodically check
|
||||
resource health.
|
||||
|
||||
Available rpmbuild rebuild options:
|
||||
--with(out) : cman stonithd doc coverage profiling pre_release upstart_job
|
||||
|
||||
%package cli
|
||||
Summary: Command line tools for controlling Pacemaker clusters
|
||||
Group: Productivity/Clustering/HA
|
||||
Requires: libpacemaker3 = %{version}-%{release}
|
||||
Requires: logrotate
|
||||
Requires: perl-TimeDate
|
||||
|
||||
%description cli
|
||||
@ -347,9 +189,7 @@ Group: Productivity/Clustering/HA
|
||||
Requires: %{name}-cli = %{version}-%{release}
|
||||
Requires: libpacemaker3 = %{version}-%{release}
|
||||
Requires: resource-agents
|
||||
%if %{defined systemd_requires}
|
||||
%systemd_requires
|
||||
%endif
|
||||
%{?systemd_requires}
|
||||
|
||||
%description remote
|
||||
Pacemaker is an advanced, scalable High-Availability cluster resource
|
||||
@ -363,25 +203,20 @@ nodes not running the full corosync/cluster stack.
|
||||
Summary: Pacemaker development package
|
||||
Group: Development/Libraries/C and C++
|
||||
Requires: %{name}-cts = %{version}-%{release}
|
||||
Requires: glib2-devel
|
||||
|
||||
%if 0%{?suse_version}
|
||||
Requires: libbz2-devel
|
||||
%else
|
||||
Requires: bzip2-devel
|
||||
%endif
|
||||
|
||||
Requires: libcorosync-devel
|
||||
Requires: libpacemaker3 = %{version}-%{release}
|
||||
Requires: libtool-ltdl-devel
|
||||
Requires: pkgconfig
|
||||
Requires: pkgconfig(bzip2)
|
||||
Requires: pkgconfig(corosync)
|
||||
Requires: pkgconfig(glib-2.0)
|
||||
Requires: pkgconfig(libqb)
|
||||
Requires: pkgconfig(libxml-2.0)
|
||||
Requires: pkgconfig(libxslt)
|
||||
Requires: pkgconfig(uuid)
|
||||
%if %{enable_lib_cluster_pkg}
|
||||
Requires: libpacemaker3-cluster = %{version}-%{release}
|
||||
%endif
|
||||
Requires: libqb-devel
|
||||
Requires: libtool-ltdl-devel
|
||||
Requires: libuuid-devel
|
||||
Requires: libxml2-devel
|
||||
Requires: libxslt-devel
|
||||
%if %with_regression_tests
|
||||
%if %{with_regression_tests}
|
||||
# For the regression tests, we can run them only if all pacemaker
|
||||
# packages are installed, so we pull that in here for the regression
|
||||
# builds; this is supposed to be disabled for shipping code.
|
||||
@ -396,28 +231,15 @@ The libpacemaker-devel package contains headers and shared libraries
|
||||
for developing tools for Pacemaker.
|
||||
|
||||
%package cts
|
||||
Summary: Test framework for cluster-related technologies like Pacemaker
|
||||
Summary: Test framework for cluster-related technologies
|
||||
Group: Productivity/Clustering/HA
|
||||
Requires: libpacemaker3 = %{version}-%{release}
|
||||
Requires: python
|
||||
|
||||
# systemd python bindings are separate package in some distros
|
||||
%if %{defined systemd_requires}
|
||||
|
||||
%if 0%{?fedora} > 20
|
||||
Requires: systemd-python
|
||||
%endif
|
||||
|
||||
%if 0%{?rhel} > 6
|
||||
Requires: systemd-python
|
||||
%endif
|
||||
|
||||
%endif
|
||||
|
||||
%description cts
|
||||
Test framework for cluster-related technologies like Pacemaker
|
||||
|
||||
%if %{with_doc}
|
||||
%if %{with doc}
|
||||
%package doc
|
||||
Summary: Documentation for Pacemaker
|
||||
Group: Productivity/Clustering/HA
|
||||
@ -430,8 +252,7 @@ manager for Corosync, CMAN and/or Linux-HA.
|
||||
%endif
|
||||
|
||||
%prep
|
||||
#%setup -q -n %{name}-%{commit}
|
||||
%setup -q -n %{name}-%{version}
|
||||
%setup -q
|
||||
%patch1 -p1
|
||||
%patch2 -p1
|
||||
%patch3 -p1
|
||||
@ -442,238 +263,139 @@ manager for Corosync, CMAN and/or Linux-HA.
|
||||
%patch8 -p1
|
||||
%patch9 -p1
|
||||
|
||||
# Force the local time
|
||||
#
|
||||
# 'git' sets the file date to the date of the last commit.
|
||||
# This can result in files having been created in the future
|
||||
# when building on machines in timezones 'behind' the one the
|
||||
# commit occurred in - which seriously confuses 'make'
|
||||
find . -exec touch \{\} \;
|
||||
|
||||
%build
|
||||
./autogen.sh
|
||||
autoreconf -fvi
|
||||
|
||||
# RHEL <= 5 does not support --docdir
|
||||
docdir=%{pcmk_docdir} %{configure} \
|
||||
%{?with_profiling: --with-profiling} \
|
||||
%{?with_coverage: --with-coverage} \
|
||||
%{!?with_cman: --without-cman} \
|
||||
%if !%with_heartbeat_support
|
||||
--without-heartbeat \
|
||||
%endif
|
||||
%if %with_nagios
|
||||
%configure \
|
||||
--docdir=%{_docdir}/%{name} \
|
||||
--disable-static \
|
||||
--disable-silent-rules \
|
||||
--without-profiling \
|
||||
--without-coverage \
|
||||
--without-cman \
|
||||
--without-heartbeat \
|
||||
--with-acl=true \
|
||||
%if %{with_nagios}
|
||||
--with-nagios=true \
|
||||
%endif
|
||||
%if %with_snmp
|
||||
%if %{with_snmp}
|
||||
--with-snmp=true \
|
||||
%endif
|
||||
%if %with_esmtp
|
||||
%if %{with_esmtp}
|
||||
--with-esmtp=true \
|
||||
%endif
|
||||
%if %with_acl
|
||||
--with-acl=true \
|
||||
%endif
|
||||
%if %with_cibsecrets
|
||||
%if %{with_cibsecrets}
|
||||
--with-cibsecrets=true \
|
||||
%endif
|
||||
%if !%enable_fatal_warnings
|
||||
%if !%{enable_fatal_warnings}
|
||||
--enable-fatal-warnings=no \
|
||||
%endif
|
||||
%{!?with_doc: --with-brand=} \
|
||||
--with-initdir=%{_initrddir} \
|
||||
--with-initdir=%{_initddir} \
|
||||
--localstatedir=%{_var} \
|
||||
--with-version=%{version}-%{release}
|
||||
|
||||
%if 0%{?suse_version} >= 1200
|
||||
# Fedora handles rpath removal automagically
|
||||
sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
|
||||
sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
|
||||
%endif
|
||||
|
||||
make %{_smp_mflags} V=1 docdir=%{pcmk_docdir} all
|
||||
make %{?_smp_mflags} all
|
||||
|
||||
%install
|
||||
rm -rf %{buildroot}
|
||||
make DESTDIR=%{buildroot} docdir=%{pcmk_docdir} V=1 install
|
||||
%make_install
|
||||
|
||||
#mkdir -p ${RPM_BUILD_ROOT}%{_sysconfdir}/sysconfig
|
||||
install -d -m755 $RPM_BUILD_ROOT/var/adm/fillup-templates
|
||||
#install -m 644 mcp/pacemaker.sysconfig ${RPM_BUILD_ROOT}%{_sysconfdir}/sysconfig/pacemaker
|
||||
install -m 644 mcp/pacemaker.sysconfig $RPM_BUILD_ROOT/var/adm/fillup-templates/sysconfig.pacemaker
|
||||
#install -m 644 tools/crm_mon.sysconfig ${RPM_BUILD_ROOT}%{_sysconfdir}/sysconfig/crm_mon
|
||||
install -m 644 tools/crm_mon.sysconfig $RPM_BUILD_ROOT/var/adm/fillup-templates/sysconfig.crm_mon
|
||||
|
||||
%if %{with upstart_job}
|
||||
mkdir -p ${RPM_BUILD_ROOT}%{_sysconfdir}/init
|
||||
install -m 644 mcp/pacemaker.upstart ${RPM_BUILD_ROOT}%{_sysconfdir}/init/pacemaker.conf
|
||||
install -m 644 mcp/pacemaker.combined.upstart ${RPM_BUILD_ROOT}%{_sysconfdir}/init/pacemaker.combined.conf
|
||||
install -m 644 tools/crm_mon.upstart ${RPM_BUILD_ROOT}%{_sysconfdir}/init/crm_mon.conf
|
||||
%endif
|
||||
install -d -m755 %{buildroot}%{_localstatedir}/adm/fillup-templates
|
||||
install -m 644 mcp/pacemaker.sysconfig %{buildroot}%{_localstatedir}/adm/fillup-templates/sysconfig.pacemaker
|
||||
install -m 644 tools/crm_mon.sysconfig %{buildroot}%{_localstatedir}/adm/fillup-templates/sysconfig.crm_mon
|
||||
|
||||
# Scripts that should be executable
|
||||
chmod a+x %{buildroot}/%{_datadir}/pacemaker/tests/cts/CTSlab.py
|
||||
|
||||
# These are not actually scripts
|
||||
find %{buildroot} -name '*.xml' -type f -print0 | xargs -0 chmod a-x
|
||||
find %{buildroot} -name '*.xsl' -type f -print0 | xargs -0 chmod a-x
|
||||
find %{buildroot} -name '*.rng' -type f -print0 | xargs -0 chmod a-x
|
||||
find %{buildroot} -name '*.dtd' -type f -print0 | xargs -0 chmod a-x
|
||||
|
||||
# Don't package static libs
|
||||
find %{buildroot} -name '*.a' -type f -print0 | xargs -0 rm -f
|
||||
find %{buildroot} -name '*.la' -type f -print0 | xargs -0 rm -f
|
||||
find %{buildroot} -type f -name "*.la" -delete -print
|
||||
|
||||
# Do not package these either
|
||||
rm -f %{buildroot}/%{_libdir}/service_crm.so
|
||||
|
||||
# Don't ship init scripts for systemd based platforms
|
||||
%if %{defined _unitdir}
|
||||
rm -f %{buildroot}/%{_initrddir}/pacemaker
|
||||
rm -f %{buildroot}/%{_initrddir}/pacemaker_remote
|
||||
rm -f %{buildroot}/%{_initddir}/pacemaker
|
||||
rm -f %{buildroot}/%{_initddir}/pacemaker_remote
|
||||
|
||||
# Don't ship fence_pcmk where it has no use
|
||||
%if %{without cman}
|
||||
rm -f %{buildroot}/%{_sbindir}/fence_pcmk
|
||||
%endif
|
||||
|
||||
ln -s /usr/sbin/service %{buildroot}%{_sbindir}/rcpacemaker
|
||||
ln -s /usr/sbin/service %{buildroot}%{_sbindir}/rcpacemaker_remote
|
||||
ln -s /usr/sbin/service %{buildroot}%{_sbindir}/rccrm_mon
|
||||
%endif
|
||||
ln -s service %{buildroot}%{_sbindir}/rcpacemaker
|
||||
ln -s service %{buildroot}%{_sbindir}/rcpacemaker_remote
|
||||
ln -s service %{buildroot}%{_sbindir}/rccrm_mon
|
||||
|
||||
mv %{buildroot}%{_sbindir}/crm_report %{buildroot}%{_sbindir}/crm_report.pacemaker
|
||||
install -m 755 %{S:1} %{buildroot}%{_sbindir}/crm_report
|
||||
install -m 755 %{SOURCE1} %{buildroot}%{_sbindir}/crm_report
|
||||
|
||||
%if %{with coverage}
|
||||
GCOV_BASE=%{buildroot}/%{_var}/lib/pacemaker/gcov
|
||||
mkdir -p $GCOV_BASE
|
||||
find . -name '*.gcno' -type f | while read F ; do
|
||||
D=`dirname $F`
|
||||
mkdir -p ${GCOV_BASE}/$D
|
||||
cp $F ${GCOV_BASE}/$D
|
||||
done
|
||||
%endif
|
||||
%fdupes -s %{buildroot}
|
||||
|
||||
%if %{defined _unitdir}
|
||||
%check
|
||||
# Prevent false positives in rpmlint
|
||||
./BasicSanity.sh -V pengine cli 2>&1
|
||||
|
||||
%post
|
||||
#%systemd_post pacemaker.service
|
||||
%service_add_post pacemaker.service
|
||||
|
||||
%pre
|
||||
%service_add_pre pacemaker.service
|
||||
|
||||
%preun
|
||||
#%systemd_preun pacemaker.service
|
||||
%service_del_preun pacemaker.service
|
||||
|
||||
%postun
|
||||
#%systemd_postun_with_restart pacemaker.service
|
||||
%service_del_postun pacemaker.service
|
||||
|
||||
%post remote
|
||||
#%systemd_post pacemaker_remote.service
|
||||
%service_add_post pacemaker_remote.service
|
||||
|
||||
%pre remote
|
||||
%service_add_pre pacemaker_remote.service
|
||||
|
||||
%preun remote
|
||||
#%systemd_preun pacemaker_remote.service
|
||||
%service_del_preun pacemaker_remote.service
|
||||
|
||||
%postun remote
|
||||
#%systemd_postun_with_restart pacemaker_remote.service
|
||||
%service_del_postun pacemaker_remote.service
|
||||
|
||||
%post cli
|
||||
|
||||
if [ ! -e %{_sysconfdir}/sysconfig/pacemaker ]; then
|
||||
%fillup_only pacemaker
|
||||
fi
|
||||
|
||||
#%systemd_post crm_mon.service
|
||||
%fillup_only pacemaker
|
||||
%service_add_post crm_mon.service
|
||||
|
||||
if [ ! -e %{_sysconfdir}/sysconfig/crm_mon ]; then
|
||||
%fillup_only crm_mon
|
||||
fi
|
||||
%fillup_only crm_mon
|
||||
|
||||
%pre cli
|
||||
%service_add_pre crm_mon.service
|
||||
|
||||
%preun cli
|
||||
#%systemd_preun crm_mon.service
|
||||
%service_del_preun crm_mon.service
|
||||
|
||||
%postun cli
|
||||
#%systemd_postun_with_restart crm_mon.service
|
||||
%service_del_postun crm_mon.service
|
||||
|
||||
%else
|
||||
|
||||
%post
|
||||
/sbin/chkconfig --add pacemaker || :
|
||||
%if %{with cman} && %{cman_native}
|
||||
# make fence_pcmk in cluster.conf valid instantly otherwise tools like ccs may
|
||||
# choke (until schema gets auto-regenerated on the next start of cluster),
|
||||
# per the protocol shared with other packages contributing to cluster.rng
|
||||
/usr/sbin/ccs_update_schema >/dev/null 2>&1 || :
|
||||
%endif
|
||||
|
||||
%preun
|
||||
/sbin/service pacemaker stop || :
|
||||
if [ $1 -eq 0 ]; then
|
||||
# Package removal, not upgrade
|
||||
/sbin/chkconfig --del pacemaker || :
|
||||
fi
|
||||
|
||||
%post remote
|
||||
/sbin/chkconfig --add pacemaker_remote || :
|
||||
|
||||
%preun remote
|
||||
/sbin/service pacemaker_remote stop &>/dev/null || :
|
||||
if [ $1 -eq 0 ]; then
|
||||
# Package removal, not upgrade
|
||||
/sbin/chkconfig --del pacemaker_remote || :
|
||||
fi
|
||||
|
||||
%post cli
|
||||
|
||||
if [ ! -e %{_sysconfdir}/sysconfig/pacemaker ]; then
|
||||
%fillup_only pacemaker
|
||||
fi
|
||||
|
||||
%endif
|
||||
|
||||
%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}
|
||||
exit 0
|
||||
|
||||
%post -n libpacemaker3 -p /sbin/ldconfig
|
||||
|
||||
%postun -n libpacemaker3 -p /sbin/ldconfig
|
||||
|
||||
%if %{enable_lib_cluster_pkg}
|
||||
%post -n libpacemaker3-cluster -p /sbin/ldconfig
|
||||
|
||||
%postun -n libpacemaker3-cluster -p /sbin/ldconfig
|
||||
%endif
|
||||
|
||||
%if %with_regression_tests
|
||||
|
||||
%if %{with_regression_tests}
|
||||
%post -n libpacemaker-devel
|
||||
if [ ! -e /tmp/.pcmk_regression_tests_ran ]; then
|
||||
touch /tmp/.pcmk_regression_tests_ran
|
||||
# Needed so that the shell doesn't get stuck on escape
|
||||
# sequences
|
||||
export TERM=dumb
|
||||
/usr/share/pacemaker/tests/cli/regression.sh || true
|
||||
/usr/share/pacemaker/tests/pengine/regression.sh -V || true
|
||||
%{_datadir}/pacemaker/tests/cli/regression.sh || true
|
||||
%{_datadir}/pacemaker/tests/pengine/regression.sh -V || true
|
||||
echo Now running shell regression tests ; date
|
||||
if ! /usr/share/pacemaker/tests/shell/regression.sh ; then
|
||||
if ! %{_datadir}/pacemaker/tests/shell/regression.sh ; then
|
||||
echo "Shell tests failed."
|
||||
cat crmtestout/regression.out
|
||||
fi
|
||||
@ -681,18 +403,11 @@ fi
|
||||
%endif
|
||||
|
||||
%files
|
||||
###########################################################
|
||||
%defattr(-,root,root)
|
||||
|
||||
#%config(noreplace) %{_sysconfdir}/sysconfig/pacemaker
|
||||
%{_sbindir}/pacemakerd
|
||||
|
||||
%if %{defined _unitdir}
|
||||
%{_unitdir}/pacemaker.service
|
||||
%{_sbindir}/rcpacemaker
|
||||
%else
|
||||
%{_initrddir}/pacemaker
|
||||
%endif
|
||||
|
||||
%exclude %{_libexecdir}/pacemaker/lrmd_test
|
||||
%exclude %{_sbindir}/pacemaker_remoted
|
||||
@ -701,40 +416,29 @@ fi
|
||||
|
||||
%{_sbindir}/crm_node
|
||||
%{_sbindir}/fence_legacy
|
||||
%if %{with cman}
|
||||
%{_sbindir}/fence_pcmk
|
||||
%endif
|
||||
%{_sbindir}/stonith_admin
|
||||
|
||||
%doc %{_mandir}/man7/crmd.*
|
||||
%doc %{_mandir}/man7/pengine.*
|
||||
%doc %{_mandir}/man7/stonithd.*
|
||||
%if %{without cman} || !%{cman_native}
|
||||
%doc %{_mandir}/man7/ocf_pacemaker_controld.*
|
||||
%endif
|
||||
%doc %{_mandir}/man7/ocf_pacemaker_o2cb.*
|
||||
%doc %{_mandir}/man7/ocf_pacemaker_remote.*
|
||||
%doc %{_mandir}/man8/crm_node.*
|
||||
%if %{with cman}
|
||||
%doc %{_mandir}/man8/fence_pcmk.*
|
||||
%endif
|
||||
%doc %{_mandir}/man8/fence_legacy.*
|
||||
%doc %{_mandir}/man8/pacemakerd.*
|
||||
%doc %{_mandir}/man8/stonith_admin.*
|
||||
%{_mandir}/man7/crmd.7%{ext_man}
|
||||
%{_mandir}/man7/pengine.7%{ext_man}
|
||||
%{_mandir}/man7/stonithd.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/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}
|
||||
|
||||
#%license COPYING
|
||||
%doc COPYING
|
||||
%doc AUTHORS
|
||||
%doc ChangeLog
|
||||
%doc %{_datadir}/pacemaker/alerts
|
||||
|
||||
%doc COPYING AUTHORS ChangeLog
|
||||
|
||||
%dir %attr (750, %{uname}, %{gname}) %{_var}/lib/pacemaker/cib
|
||||
%dir %attr (750, %{uname}, %{gname}) %{_var}/lib/pacemaker/pengine
|
||||
%if %{without cman} || !%{cman_native}
|
||||
/usr/lib/ocf/resource.d/pacemaker/controld
|
||||
%endif
|
||||
/usr/lib/ocf/resource.d/pacemaker/o2cb
|
||||
/usr/lib/ocf/resource.d/pacemaker/remote
|
||||
/usr/lib/ocf/resource.d/.isolation
|
||||
%{_libexecdir}/ocf/resource.d/pacemaker/controld
|
||||
%{_libexecdir}/ocf/resource.d/pacemaker/o2cb
|
||||
%{_libexecdir}/ocf/resource.d/pacemaker/remote
|
||||
%{_libexecdir}/ocf/resource.d/.isolation
|
||||
|
||||
%if "%{?cs_version}" != "UNKNOWN"
|
||||
%if 0%{?cs_version} < 2
|
||||
@ -742,26 +446,11 @@ fi
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%if %{with upstart_job}
|
||||
%config(noreplace) %{_sysconfdir}/init/pacemaker.conf
|
||||
%config(noreplace) %{_sysconfdir}/init/pacemaker.combined.conf
|
||||
%endif
|
||||
|
||||
%files cli
|
||||
%defattr(-,root,root)
|
||||
|
||||
%config(noreplace) %{_sysconfdir}/logrotate.d/pacemaker
|
||||
#%config(noreplace) %{_sysconfdir}/sysconfig/crm_mon
|
||||
|
||||
%if %{defined _unitdir}
|
||||
%{_unitdir}/crm_mon.service
|
||||
%{_sbindir}/rccrm_mon
|
||||
%endif
|
||||
|
||||
%if %{with upstart_job}
|
||||
%config(noreplace) %{_sysconfdir}/init/crm_mon.conf
|
||||
%endif
|
||||
|
||||
%{_sbindir}/attrd_updater
|
||||
%{_sbindir}/cibadmin
|
||||
%{_sbindir}/crm_attribute
|
||||
@ -780,28 +469,29 @@ fi
|
||||
%{_sbindir}/crm_report
|
||||
%{_sbindir}/crm_report.pacemaker
|
||||
%{_sbindir}/crm_ticket
|
||||
%exclude %{_datadir}/pacemaker/alerts
|
||||
%exclude %{_datadir}/pacemaker/tests
|
||||
%{_datadir}/pacemaker
|
||||
%{_datadir}/snmp/mibs/PCMK-MIB.txt
|
||||
|
||||
%exclude /usr/lib/ocf/resource.d/pacemaker/controld
|
||||
%exclude /usr/lib/ocf/resource.d/pacemaker/o2cb
|
||||
%exclude /usr/lib/ocf/resource.d/pacemaker/remote
|
||||
%exclude %{_libexecdir}/ocf/resource.d/pacemaker/controld
|
||||
%exclude %{_libexecdir}/ocf/resource.d/pacemaker/o2cb
|
||||
%exclude %{_libexecdir}/ocf/resource.d/pacemaker/remote
|
||||
|
||||
%dir /usr/lib/ocf
|
||||
%dir /usr/lib/ocf/resource.d
|
||||
/usr/lib/ocf/resource.d/pacemaker
|
||||
%dir %{_libexecdir}/ocf
|
||||
%dir %{_libexecdir}/ocf/resource.d
|
||||
%{_libexecdir}/ocf/resource.d/pacemaker
|
||||
|
||||
%config(noreplace) /var/adm/fillup-templates/sysconfig.pacemaker
|
||||
%config(noreplace) /var/adm/fillup-templates/sysconfig.crm_mon
|
||||
%doc %{_mandir}/man7/*
|
||||
%config(noreplace) %{_localstatedir}/adm/fillup-templates/sysconfig.pacemaker
|
||||
%config(noreplace) %{_localstatedir}/adm/fillup-templates/sysconfig.crm_mon
|
||||
%{_mandir}/man7/*
|
||||
%exclude %{_mandir}/man7/crmd.*
|
||||
%exclude %{_mandir}/man7/pengine.*
|
||||
%exclude %{_mandir}/man7/stonithd.*
|
||||
%exclude %{_mandir}/man7/ocf_pacemaker_controld.*
|
||||
%exclude %{_mandir}/man7/ocf_pacemaker_o2cb.*
|
||||
%exclude %{_mandir}/man7/ocf_pacemaker_remote.*
|
||||
%doc %{_mandir}/man8/*
|
||||
%{_mandir}/man8/*
|
||||
%exclude %{_mandir}/man8/crm_node.*
|
||||
%exclude %{_mandir}/man8/fence_pcmk.*
|
||||
%exclude %{_mandir}/man8/fence_legacy.*
|
||||
@ -809,10 +499,7 @@ fi
|
||||
%exclude %{_mandir}/man8/pacemaker_remoted.*
|
||||
%exclude %{_mandir}/man8/stonith_admin.*
|
||||
|
||||
#%license COPYING
|
||||
%doc COPYING
|
||||
%doc AUTHORS
|
||||
%doc ChangeLog
|
||||
%doc COPYING AUTHORS ChangeLog
|
||||
|
||||
%dir %attr (750, %{uname}, %{gname}) %{_var}/lib/pacemaker
|
||||
%dir %attr (750, %{uname}, %{gname}) %{_var}/lib/pacemaker/blackbox
|
||||
@ -830,38 +517,25 @@ fi
|
||||
%{_libdir}/libpengine.so.*
|
||||
%{_libdir}/libstonithd.so.*
|
||||
%{_libdir}/libtransitioner.so.*
|
||||
#%license COPYING.LIB
|
||||
%doc COPYING.LIB
|
||||
%doc AUTHORS
|
||||
%doc COPYING.LIB AUTHORS
|
||||
%{_libdir}/libcrmcluster.so.*
|
||||
|
||||
%if %{enable_lib_cluster_pkg}
|
||||
%files -n libpacemaker3-cluster
|
||||
%defattr(-,root,root)
|
||||
#%{_libdir}/libcrmcluster.so.*
|
||||
#%license COPYING.LIB
|
||||
%doc COPYING.LIB
|
||||
%doc AUTHORS
|
||||
%{_libdir}/libcrmcluster.so.*
|
||||
%doc COPYING.LIB AUTHORS
|
||||
%endif
|
||||
|
||||
%files remote
|
||||
%defattr(-,root,root)
|
||||
|
||||
#%config(noreplace) %{_sysconfdir}/sysconfig/pacemaker
|
||||
%if %{defined _unitdir}
|
||||
%{_unitdir}/pacemaker_remote.service
|
||||
%{_sbindir}/rcpacemaker_remote
|
||||
%else
|
||||
%{_initrddir}/pacemaker_remote
|
||||
%endif
|
||||
|
||||
%{_sbindir}/pacemaker_remoted
|
||||
%{_mandir}/man8/pacemaker_remoted.*
|
||||
#%license COPYING
|
||||
%doc COPYING
|
||||
%doc AUTHORS
|
||||
%{_mandir}/man8/pacemaker_remoted.8%{ext_man}
|
||||
%doc COPYING AUTHORS
|
||||
|
||||
%if %{with_doc}
|
||||
%if %{with doc}
|
||||
%files doc
|
||||
%defattr(-,root,root)
|
||||
%doc %{pcmk_docdir}
|
||||
@ -869,13 +543,10 @@ fi
|
||||
|
||||
%files cts
|
||||
%defattr(-,root,root)
|
||||
#%{py_site}/cts
|
||||
%{py_sitedir}/cts
|
||||
%{_datadir}/pacemaker/tests/cts
|
||||
%{_libexecdir}/pacemaker/lrmd_test
|
||||
#%license COPYING
|
||||
%doc COPYING
|
||||
%doc AUTHORS
|
||||
%doc COPYING AUTHORS
|
||||
|
||||
%files -n libpacemaker-devel
|
||||
%defattr(-,root,root)
|
||||
@ -883,12 +554,7 @@ fi
|
||||
%{_datadir}/pacemaker/tests
|
||||
%{_includedir}/pacemaker
|
||||
%{_libdir}/*.so
|
||||
%if %{with coverage}
|
||||
%{_var}/lib/pacemaker/gcov
|
||||
%endif
|
||||
%{_libdir}/pkgconfig/*.pc
|
||||
#%license COPYING.LIB
|
||||
%doc COPYING.LIB
|
||||
%doc AUTHORS
|
||||
%doc COPYING.LIB AUTHORS
|
||||
|
||||
%changelog
|
||||
|
Loading…
Reference in New Issue
Block a user