Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
SUSE:SLE-15:Update
pacemaker.15719
pacemaker.spec
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File pacemaker.spec of Package pacemaker.15719
# # spec file for package pacemaker # # Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via http://bugs.opensuse.org/ # #Compat macro for new _fillupdir macro introduced in Nov 2017 %if ! %{defined _fillupdir} %define _fillupdir /var/adm/fillup-templates %endif # Globals and defines to control package behavior (configure these as desired) ## User and group to use for nonprivileged services %global uname hacluster %global gname haclient ## Where to install Pacemaker documentation %global pcmk_docdir %{_docdir}/%{name} ## Path to Python interpreter (leave commented to auto-detect, ## or uncomment and edit to use a specific version) %global python_path /usr/bin/python%{python3_version} ## Corosync version %define cs_version 2 %define with_nagios 1 %define with_cibsecrets 1 %define enable_lib_cluster_pkg 0 %define enable_fatal_warnings 0 %define with_regression_tests 0 # Define conditionals so that "rpmbuild --with <feature>" and # "rpmbuild --without <feature>" can enable and disable specific features ## Add option to enable support for stonith/external fencing agents %bcond_without stonithd ## Add option to create binaries suitable for use with profiling tools %bcond_with profiling ## Add option to create binaries with coverage analysis %bcond_with coverage ## Add option to skip generating documentation ## (the build tools aren't available everywhere) %bcond_with doc ## Add option to turn off hardening of libraries and daemon executables %bcond_with hardening # Keep sane profiling data if requested %if %{with profiling} ## Disable -debuginfo package and stripping binaries/libraries %define debug_package %{nil} %endif Name: pacemaker Version: 1.1.18+20180430.b12c320f5 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+ Group: Productivity/Clustering/HA Url: http://www.clusterlabs.org # Hint: use "spectool -s 0 pacemaker.spec" (rpmdevtools) to check the final URL: # https://github.com/ClusterLabs/pacemaker/archive/e91769e5a39f5cb2f7b097d3c612368f0530535e/pacemaker-e91769e.tar.gz Source0: %{name}-%{version}.tar.xz Source1: crm_report.in Source100: pacemaker.rpmlintrc Patch1: bug-806256_pacemaker-log-level-notice.patch Patch2: bug-728579_pacemaker-stonith-dev-id.patch Patch3: pacemaker-nagios-plugin-dir.patch Patch4: bug-812269_pacemaker-fencing-device-register-messages.patch Patch5: pacemaker-Wno-format-signedness.patch Patch6: bug-943295_pacemaker-lrmd-log-notice.patch Patch7: bug-977201_pacemaker-controld-self-fencing.patch Patch8: bug-995365_pacemaker-cts-restart-systemd-journald.patch Patch9: pacemaker-cts-StartCmd.patch Patch10: pacemaker-libcrmcommon-check-filedirectory-writability-better.patch Patch11: pacemaker-pacemaker_remote-correct-documentation-URL-in-systemd-unit-file.patch Patch12: pacemaker-libcrmcommon-improve-connection-loss-message.patch Patch13: pacemaker-daemons-improve-connection-loss-messages.patch Patch14: pacemaker-libcrmcommon-avoid-memory-leak-on-failed-IPC-send.patch Patch15: pacemaker-io.c-restore--Werror-buildability--put-conversion-specifier-last.patch Patch16: pacemaker-libcrmcommon-pacemakerd-kernel-task-name-is-at-most-15-characters.patch Patch17: pacemaker-controller-dont-abort-after-delay-if-were-no-longer-DC.patch Patch18: pacemaker-contoller-scheduler-guard-hash-table-deletes.patch Patch19: pacemaker-execd-handle-systemd-actions-correctly-when-used-with-service.patch Patch20: pacemaker-libcrmservice-separate-LSB-specific-code-into-own-source-files.patch Patch21: pacemaker-libcrmservice-find-absolute-paths-when-used-with-service.patch Patch22: pacemaker-scheduler-improve-failed-op-message.patch Patch23: bsc#1102915-pacemaker-tools-cibsecret---help--version-doesnt-require-cluster-to-be-running.patch Patch24: pacemaker-libcrmservice-dont-consider-a-cancelled-recurring-operation-as-failed.patch Patch25: pacemaker-tools-bash-portability-issue-in-crm_failcount.patch Patch26: pacemaker-tools-handle-multiple-values-properly-in-crm_attribute.patch Patch27: pacemaker-tools-use-output-redirection-correctly-in-crm_standby.patch Patch28: pacemaker-tools-improve-error-messages-from-crm_resource---move.patch Patch29: pacemaker-XML-regression.sh-modularize-XSLT-processor-allow-substitutes.patch Patch30: pacemaker-XML-upgrade-2.10.xsl-simplify-1-2-resource-instance_attributes.patch Patch31: pacemaker-XML-upgrade-2.10.xsl-simplify-2-2-HelperIdentity-no-INNER-RECURSION.patch Patch32: pacemaker-XML-upgrade-2.10.xsl-remaining-marking-space-with-op-meta_attributes.patch Patch33: pacemaker-XML-upgrade-2.10.xsl-make-diagnostics-more-direct-wrt-context.patch Patch34: pacemaker-XML-upgrade-2.10.xsl-resource-meta_attributes-isolation-items.patch Patch35: pacemaker-controld-avoid-memory-leak-when-synthesizing-failure.patch Patch36: pacemaker-cts-scheduler-avoid-unsupported-usage-of-requires.patch Patch37: pacemaker-execd-avoid-memory-leak-when-testing-remote-key.patch Patch38: pacemaker-XML-upgrade-2.10.xsl-resource-meta_attributes-validity-conformance.patch Patch39: pacemaker-XML-upgrade-2.10.xsl-re-apply-on-scheduler-CTS-test-cases.patch Patch40: pacemaker-XML-upgrade-2.10.xsl-resource-meta_attributes-tweak-diagnostic-msg.patch Patch41: bsc#1094208-0001-Fix-controld-able-to-manually-confirm-unseen-nodes-a.patch Patch42: bsc#1094208-0002-Refactor-fenced-Handle-fencing-requested-with-nodeid.patch Patch43: 0001-Test-cts-set-default-number-of-iterations-to-1.patch Patch44: bsc#1114840-0001-Test-CTS-don-t-require-nodes-to-be-specified-if-only.patch Patch45: bsc#1121272-0001-Test-cts-simulate-failure-of-pacemaker_remoted-by-fr.patch Patch46: bsc#1121272-0002-Test-cts-resume-any-possibly-frozen-pacemaker_remote.patch Patch47: bsc#1121272-0003-Test-cts-clear-constraints-on-cluster-nodes.patch Patch48: 0001-Test-cts-use-bash-in-the-pacemaker-cts-dummyd.patch Patch49: 0001-Test-CTS-lower-remote-connection-failure-detection-t.patch Patch50: 0002-Test-CTS-ignore-monitor-failures-when-testing-remote.patch Patch51: bsc#1121808-0001-Test-cts-exec-still-run-the-tests-for-the-other-reso.patch Patch52: 0001-Test-cts-service-counts-as-enabled-only-if-it-s-expl.patch Patch53: 0002-Test-cts-temporarily-disable-any-enabled-cluster-ser.patch Patch54: bsc#1114840-0001-Test-CTS-really-don-t-require-nodes-to-be-specified-.patch Patch55: bsc#1117934-0001-Fix-scheduler-cl-5301-respect-order-constraints-when.patch Patch56: bsc#1117934-0002-Test-scheduler-cl-5301-respect-order-constraints-whe.patch Patch57: bsc#1117934-0003-Test-scheduler-cl-5301-respect-order-constraints-whe.patch Patch58: bsc#1128772-0001-Fix-libcrmcluster-avoid-use-of-NULL-when-searching-f.patch Patch59: 0001-Shutdown-corosync-after-a-fatal-error.patch Patch60: 0001-Low-pacemakerd-only-one-active-process-check-needed.patch Patch61: bsc#1131357-0001-High-libservices-fix-use-after-free-wrt.-alert-handl.patch Patch62: bsc#1131353-bsc#1131356-0002-High-pacemakerd-vs.-IPC-procfs-confused-deputy-authe.patch Patch63: bsc#1131353-bsc#1131356-0003-High-pacemakerd-vs.-IPC-procfs-confused-deputy-authe.patch Patch64: bsc#1131353-bsc#1131356-0004-High-pacemakerd-vs.-IPC-procfs-confused-deputy-authe-1.1.patch Patch65: bsc#1131353-bsc#1131356-0005-High-pacemakerd-vs.-IPC-procfs-confused-deputy-authe.patch Patch66: bsc#1131353-bsc#1131356-0006-High-pacemakerd-vs.-IPC-procfs-confused-deputy-authe-1.1.patch Patch67: bsc#1131353-bsc#1131356-0007-Med-controld-fix-possible-NULL-pointer-dereference-1.1.patch Patch68: bsc#1140519-0001-Fix-tools-crm_resource-C-should-wait-for-all-replies.patch Patch69: bsc#1131353-bsc#1131356-0008-Fix-libcrmcommon-avoid-use-of-NULL-when-checking-whe.patch Patch70: bsc#1131353-bsc#1131356-0009-Low-libcrmcommon-return-proper-code-if-testing-pid-i.patch Patch71: 0001-Low-controller-avoid-memory-leak-when-duplicate-moni.patch Patch72: bsc#1127716-0001-Fix-libcrmcommon-correctly-apply-XML-diffs-with-mult.patch Patch73: bsc#1127716-0002-Fix-libcrmcommon-avoid-possible-use-of-NULL-when-app.patch Patch74: bsc#1127716-0003-Fix-libcrmcommon-return-error-when-applying-XML-diff.patch Patch75: bsc#1133866-0001-Refactor-libcrmcommon-improve-parse_op_key-efficienc.patch Patch76: bsc#1133866-0002-Log-controller-improve-failed-recurring-action-messa.patch Patch77: bsc#1133866-0003-Fix-controller-confirm-cancel-of-failed-monitors.patch Patch78: bsc#1130122-0001-Fix-scheduler-wait-for-probe-actions-to-complete-to-.patch Patch79: bsc#1130122-0002-Test-scheduler-wait-for-probe-actions-to-complete-to.patch Patch80: bsc#1151007-0001-Fix-fencer-Don-t-let-a-fencing-command-with-a-long-d.patch Patch81: bsc#1151007-0002-Fix-fencer-Make-sure-concurrent-fencing-commands-get.patch Patch82: bsc#1151007-0003-Log-fencer-Indicate-fencing-target-in-the-logs-when-.patch Patch83: bsc#1151007-0004-Refactor-fencer-no-need-to-check-the-length-of-a-non.patch Patch84: bsc#1151007-0005-Log-fencer-improved-log-messages-regarding-fencing-a.patch Patch85: 0001-Test-cts-ComponentFail-killed-corosync-doesn-t-respa-1.1.patch Patch86: bsc#1154881-0001-Fix-scheduler-make-sure-cluster-wide-maintenance-mod.patch Patch87: bsc#1160410-0001-Refactor-attrd-properly-declare-global-variables-as-.patch Patch88: bsc#1160410-0001-Build-get-ready-for-implicit-fno-common-with-upcomin.patch Patch89: bsc#1168771-0001-Fix-libcrmcluster-use-uint64_t-type-for-corosync-rin.patch Patch90: jsc#ECO-1611-0001-Feature-scheduler-add-priority-fencing-delay-cluster.patch Patch91: jsc#ECO-1611-0002-Feature-scheduler-implement-priority-fencing-delay.patch Patch92: jsc#ECO-1611-0003-Test-scheduler-add-regression-test-for-priority-fenc.patch Patch93: jsc#ECO-1611-0004-Feature-libstonithd-introduce-fence_with_delay-opera.patch Patch94: jsc#ECO-1611-0005-Feature-controller-request-fencing-with-any-enforced.patch Patch95: jsc#ECO-1611-0006-Feature-stonith_admin-add-delay-option-to-support-en.patch Patch96: jsc#ECO-1611-0007-Feature-fencer-handle-any-enforced-fencing-delay.patch Patch97: jsc#ECO-1611-0008-Test-fencer-add-cpg_topology_delay-test-to-verify-en.patch Patch98: jsc#ECO-1611-0009-Doc-Pacemaker-Explained-document-priority-fencing-de.patch Patch99: jsc#ECO-1611-0010-Feature-scheduler-priority-fencing-delay-defaults-to.patch Patch100: jsc#ECO-1611-0011-Feature-scheduler-do-not-differentiate-the-case-wher.patch Patch101: jsc#ECO-1611-0012-Feature-fencer-any-delays-from-pcmk_delay_base-max-a.patch Patch102: jsc#ECO-1611-0013-Feature-stonith_admin-delay-option-defaults-to-0.patch Patch103: jsc#ECO-1611-0014-Feature-controller-requested-priority-fencing-delay-.patch Patch104: jsc#ECO-1611-0015-Test-fencer-update-cpg_topology_delay-test-to-also-v.patch Patch105: bsc#1171372-0001-Refactor-libstonithd-functionize-fudging-metadata-of.patch Patch106: bsc#1171372-0002-Fix-libstonithd-action-parameter-of-RHCS-style-fence.patch Patch107: bsc#1171372-0003-Fix-libstonithd-plug-parameter-of-RHCS-style-fence-a.patch Patch108: bsc#1171372-0004-Test-cts-add-plug-parameter-for-fence_dummy-agent.patch Patch109: jsc#ECO-1611-0016-Fix-controller-avoid-possible-use-of-NULL-on-logging.patch Patch110: jsc#ECO-1611-0017-Doc-stonith_admin-delay-is-an-optional-option-for-fe.patch Patch111: bsc#1171372-0005-Refactor-libstonithd-add-function-to-check-supported.patch Patch112: bsc#1171372-0006-Fix-fencer-add-port-or-plug-parameter-according-to-m.patch Patch113: bsc#1171372-0007-Doc-Pacemaker-Explained-update-the-default-value-and.patch Patch114: bsc#1171372-0010-Refactor-libstonithd-make-the-assert-message-from-st.patch Patch115: bsc#1171372-0011-Fix-fencer-avoid-possible-use-of-NULL-when-parsing-m.patch # Required for core functionality BuildRequires: autoconf BuildRequires: automake BuildRequires: coreutils BuildRequires: fdupes BuildRequires: findutils BuildRequires: gcc BuildRequires: grep BuildRequires: help2man BuildRequires: libtool BuildRequires: ncurses-devel BuildRequires: pam-devel BuildRequires: pkgconfig # Required for agent_config.h which specifies the correct scratch directory BuildRequires: resource-agents BuildRequires: sed %if %{with_cibsecrets} BuildRequires: openssh BuildRequires: procps %endif BuildRequires: pkgconfig(bzip2) BuildRequires: pkgconfig(corosync) >= 2.0.0 BuildRequires: pkgconfig(dbus-1) BuildRequires: pkgconfig(glib-2.0) >= 2.16 BuildRequires: pkgconfig(gnutls) BuildRequires: pkgconfig(libexslt) # Pacemaker requires a minimum libqb functionality BuildRequires: pkgconfig(libqb) > 0.13.0 BuildRequires: pkgconfig(libxml-2.0) BuildRequires: pkgconfig(libxslt) # Pacemaker requires a minimum Python functionality BuildRequires: pkgconfig(python3) BuildRequires: pkgconfig(systemd) BuildRequires: pkgconfig(uuid) Requires: %{name}-cli = %{version}-%{release} Requires: corosync >= 2.0.0 Requires: libpacemaker3 = %{version}-%{release} Requires: libqb > 0.13.0 Requires: psmisc Requires: python3 Requires: resource-agents Recommends: crmsh Recommends: fence-agents Recommends: libdlm Recommends: sbd Suggests: graphviz 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 # Enables optional functionality %if 0%{?suse_version} > 1100 BuildRequires: docbook-xsl-stylesheets %else BuildRequires: docbook-style-xsl %endif %if %{with stonithd} %if 0%{?suse_version} BuildRequires: libglue-devel %else BuildRequires: cluster-glue-libs-devel %endif %endif %if %{with doc} BuildRequires: asciidoc BuildRequires: inkscape BuildRequires: publican %endif %if %{with_regression_tests} BuildRequires: procps BuildRequires: python3-curses BuildRequires: python3-xml %endif %description Pacemaker is an advanced, scalable High-Availability cluster resource manager. It supports more than 16 node clusters with significant capabilities for managing resources and dependencies. 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. %package cli Summary: Command line tools for controlling Pacemaker clusters Group: Productivity/Clustering/HA Requires: libpacemaker3 = %{version}-%{release} Requires: logrotate Requires: perl-TimeDate Requires(post): coreutils %description cli Pacemaker is an advanced, scalable High-Availability cluster resource manager. The %{name}-cli package contains command line tools that can be used to query and control the cluster from machines that may, or may not, be part of the cluster. %package -n libpacemaker3 Summary: Core Pacemaker libraries Group: Productivity/Clustering/HA Requires(pre): shadow %description -n libpacemaker3 Pacemaker is an advanced, scalable High-Availability cluster resource manager. The libpacemaker3 package contains shared libraries needed for cluster nodes and those just running the CLI tools. %if %{enable_lib_cluster_pkg} %package -n libpacemaker3-cluster Summary: Cluster Libraries used by Pacemaker Group: Productivity/Clustering/HA Requires: libpacemaker3 = %{version}-%{release} %description -n libpacemaker3-cluster Pacemaker is an advanced, scalable High-Availability cluster resource manager. The libpacemaker3-cluster package contains cluster-aware shared libraries needed for nodes that will form part of the cluster nodes. %endif %package remote Summary: Pacemaker remote daemon for non-cluster nodes Group: Productivity/Clustering/HA Requires: %{name}-cli = %{version}-%{release} Requires: libpacemaker3 = %{version}-%{release} Requires: resource-agents %{?systemd_requires} %description remote Pacemaker is an advanced, scalable High-Availability cluster resource manager. The %{name}-remote package contains the Pacemaker Remote daemon which is capable of extending pacemaker functionality to remote 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 Requires: pkgconfig(bzip2) Requires: pkgconfig(corosync) >= 2.0.0 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 %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. Requires: pacemaker %endif %description -n libpacemaker-devel Pacemaker is an advanced, scalable High-Availability cluster resource manager. The libpacemaker-devel package contains headers and shared libraries for developing tools for Pacemaker. %package cts Summary: Test framework for cluster-related technologies Group: Productivity/Clustering/HA Requires: libpacemaker3 = %{version}-%{release} Requires: python3 BuildArch: noarch #Requires: python3-systemd Recommends: python3-systemd %description cts Test framework for cluster-related technologies like Pacemaker %if %{with doc} %package doc Summary: Documentation for Pacemaker Group: Productivity/Clustering/HA BuildArch: noarch %description doc Documentation for Pacemaker. Pacemaker is an advanced, scalable High-Availability cluster resource manager. %endif %prep %setup -q -n %{name}-%{version} %patch1 -p1 %patch2 -p1 %patch3 -p1 %patch4 -p1 %patch5 -p1 %patch6 -p1 %patch7 -p1 %patch8 -p1 %patch9 -p1 %patch10 -p1 %patch11 -p1 %patch12 -p1 %patch13 -p1 %patch14 -p1 %patch15 -p1 %patch16 -p1 %patch17 -p1 %patch18 -p1 %patch19 -p1 %patch20 -p1 %patch21 -p1 %patch22 -p1 %patch23 -p1 %patch24 -p1 %patch25 -p1 %patch26 -p1 %patch27 -p1 %patch28 -p1 %patch29 -p1 %patch30 -p1 %patch31 -p1 %patch32 -p1 %patch33 -p1 %patch34 -p1 %patch35 -p1 %patch36 -p1 %patch37 -p1 %patch38 -p1 %patch39 -p1 %patch40 -p1 %patch41 -p1 %patch42 -p1 %patch43 -p1 %patch44 -p1 %patch45 -p1 %patch46 -p1 %patch47 -p1 %patch48 -p1 %patch49 -p1 %patch50 -p1 %patch51 -p1 %patch52 -p1 %patch53 -p1 %patch54 -p1 %patch55 -p1 %patch56 -p1 %patch57 -p1 %patch58 -p1 %patch59 -p1 %patch60 -p1 %patch61 -p1 %patch62 -p1 %patch63 -p1 %patch64 -p1 %patch65 -p1 %patch66 -p1 %patch67 -p1 %patch68 -p1 %patch69 -p1 %patch70 -p1 %patch71 -p1 %patch72 -p1 %patch73 -p1 %patch74 -p1 %patch75 -p1 %patch76 -p1 %patch77 -p1 %patch78 -p1 %patch79 -p1 %patch80 -p1 %patch81 -p1 %patch82 -p1 %patch83 -p1 %patch84 -p1 %patch85 -p1 %patch86 -p1 %patch87 -p1 %patch88 -p1 %patch89 -p1 %patch90 -p1 %patch91 -p1 %patch92 -p1 %patch93 -p1 %patch94 -p1 %patch95 -p1 %patch96 -p1 %patch97 -p1 %patch98 -p1 %patch99 -p1 %patch100 -p1 %patch101 -p1 %patch102 -p1 %patch103 -p1 %patch104 -p1 %patch105 -p1 %patch106 -p1 %patch107 -p1 %patch108 -p1 %patch109 -p1 %patch110 -p1 %patch111 -p1 %patch112 -p1 %patch113 -p1 %patch114 -p1 %patch115 -p1 %build export systemdunitdir=%{?_unitdir}%{!?_unitdir:no} %if %{with hardening} # prefer distro-provided hardening flags in case they are defined # through _hardening_{c,ld}flags macros, configure script will # use its own defaults otherwise; if such hardenings are completely # undesired, rpmbuild using "--without hardening" # (or "--define '_without_hardening 1'") export CFLAGS_HARDENED_EXE="%{?_hardening_cflags}" export CFLAGS_HARDENED_LIB="%{?_hardening_cflags}" export LDFLAGS_HARDENED_EXE="%{?_hardening_ldflags}" export LDFLAGS_HARDENED_LIB="%{?_hardening_ldflags}" %endif autoreconf -fvi %configure \ --docdir=%{_docdir}/%{name} \ --disable-static \ --disable-silent-rules \ --with-acl=true \ %if %{with_nagios} --with-nagios=true \ %endif %if %{with_cibsecrets} --with-cibsecrets=true \ %endif %if !%{enable_fatal_warnings} --enable-fatal-warnings=no \ %endif %{?python_path: PYTHON=%{python_path}} \ %{!?with_hardening: --disable-hardening} \ %{?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 %install %make_install 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 # Don't package static libs find %{buildroot} -type f -name "*.a" -delete -print find %{buildroot} -type f -name "*.la" -delete -print # Don't ship init scripts for systemd based platforms rm -f %{buildroot}/%{_initddir}/pacemaker rm -f %{buildroot}/%{_initddir}/pacemaker_remote %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 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 %{SOURCE1} %{buildroot}%{_sbindir}/crm_report ln -s ../heartbeat/NodeUtilization %{buildroot}%{_libexecdir}/ocf/resource.d/pacemaker/ %fdupes -s %{buildroot} %check # Prevent false positives in rpmlint ./cts/cts-regression -V pengine cli 2>&1 %pre %service_add_pre pacemaker.service %post %service_add_post pacemaker.service %preun %service_del_preun pacemaker.service %postun %service_del_postun pacemaker.service %pre remote %service_add_pre pacemaker_remote.service %post remote %service_add_post pacemaker_remote.service %preun remote %service_del_preun pacemaker_remote.service %postun remote %service_del_postun pacemaker_remote.service %pre cli %service_add_pre crm_mon.service %post cli if [ ! -e %{_sysconfdir}/sysconfig/pacemaker ]; then %fillup_only -n pacemaker fi %service_add_post crm_mon.service 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 %pre cts %service_add_pre pacemaker-cts-dummyd@.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} 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} %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 %{_datadir}/pacemaker/tests/cts-cli || true %{_datadir}/pacemaker/tests/cts-pengine -V || true fi %endif %files %defattr(-,root,root) %{_defaultdocdir}/%{name}/ %{_sbindir}/pacemakerd %{_unitdir}/pacemaker.service %{_sbindir}/rcpacemaker %exclude %{_libexecdir}/pacemaker/lrmd_test %exclude %{_sbindir}/pacemaker_remoted %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/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} %doc %{_datadir}/pacemaker/alerts #%license licenses/GPLv2 %doc COPYING ChangeLog %dir %attr (750, %{uname}, %{gname}) %{_var}/lib/pacemaker/cib %dir %attr (750, %{uname}, %{gname}) %{_var}/lib/pacemaker/pengine %{_libexecdir}/ocf/resource.d/pacemaker/controld %{_libexecdir}/ocf/resource.d/pacemaker/o2cb %{_libexecdir}/ocf/resource.d/pacemaker/remote %if "%{?cs_version}" != "UNKNOWN" %if 0%{?cs_version} < 2 %{_libexecdir}/lcrso/pacemaker.lcrso %endif %endif %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 %{_sbindir}/attrd_updater %{_sbindir}/cibadmin %{_sbindir}/crm_attribute %{_sbindir}/crm_diff %{_sbindir}/crm_error %{_sbindir}/crm_failcount %{_sbindir}/crm_master %{_sbindir}/crm_mon %{_sbindir}/crm_resource %{_sbindir}/crm_standby %{_sbindir}/crm_verify %{_sbindir}/crmadmin %{_sbindir}/iso8601 %{_sbindir}/crm_shadow %{_sbindir}/crm_simulate %{_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 %{_libexecdir}/pacemaker/lrmd_test %exclude %{_libexecdir}/ocf/resource.d/pacemaker/controld %exclude %{_libexecdir}/ocf/resource.d/pacemaker/o2cb %exclude %{_libexecdir}/ocf/resource.d/pacemaker/remote %dir %{_libexecdir}/ocf %dir %{_libexecdir}/ocf/resource.d %{_libexecdir}/ocf/resource.d/pacemaker %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/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/stonith_admin.* #%license licenses/GPLv2 %doc COPYING ChangeLog %dir %attr (750, %{uname}, %{gname}) %{_var}/lib/pacemaker %dir %attr (750, %{uname}, %{gname}) %{_var}/lib/pacemaker/blackbox %dir %attr (750, %{uname}, %{gname}) %{_var}/lib/pacemaker/cores %dir %attr (770, %{uname}, %{gname}) %{_var}/log/pacemaker %dir %attr (770, %{uname}, %{gname}) %{_var}/log/pacemaker/bundles %files -n libpacemaker3 %defattr(-,root,root) %{_libdir}/libcib.so.* %{_libdir}/liblrmd.so.* %{_libdir}/libcrmservice.so.* %{_libdir}/libcrmcommon.so.* %{_libdir}/libpe_status.so.* %{_libdir}/libpe_rules.so.* %{_libdir}/libpengine.so.* %{_libdir}/libstonithd.so.* %{_libdir}/libtransitioner.so.* #%license licenses/LGPLv2.1 %doc COPYING ChangeLog %{_libdir}/libcrmcluster.so.* %if %{enable_lib_cluster_pkg} %files -n libpacemaker3-cluster %defattr(-,root,root) %{_libdir}/libcrmcluster.so.* #%license licenses/LGPLv2.1 %doc COPYING ChangeLog %endif %files remote %defattr(-,root,root) %{_unitdir}/pacemaker_remote.service %{_sbindir}/rcpacemaker_remote %{_sbindir}/pacemaker_remoted %{_mandir}/man8/pacemaker_remoted.8%{ext_man} #%license licenses/GPLv2 %doc COPYING ChangeLog %if %{with doc} %files doc %defattr(-,root,root) %doc %{pcmk_docdir} #%license licenses/CC-BY-SA-4.0 %endif %files cts %defattr(-,root,root) %{python3_sitelib}/cts %{_datadir}/pacemaker/tests %{_unitdir}/pacemaker-cts-dummyd@.service #%license licenses/GPLv2 %doc COPYING ChangeLog %files -n libpacemaker-devel %defattr(-,root,root) %{_includedir}/pacemaker %{_libdir}/*.so %if %{with coverage} %{_var}/lib/pacemaker/gcov %endif %{_libdir}/pkgconfig/*.pc #%license licenses/LGPLv2.1 %doc COPYING ChangeLog %changelog
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor