diff --git a/.gitignore b/.gitignore index 1fd5e7b..80b3171 100644 --- a/.gitignore +++ b/.gitignore @@ -7,3 +7,4 @@ /ClusterLabs-pacemaker-7742926.tar.gz /ClusterLabs-pacemaker-Pacemaker-1.1.7.tar.gz /ClusterLabs-pacemaker-b5b0a7b.tar.gz +/ClusterLabs-pacemaker-c72d970.tar.gz diff --git a/pacemaker.spec b/pacemaker.spec index 2e66556..7051f4f 100644 --- a/pacemaker.spec +++ b/pacemaker.spec @@ -2,8 +2,8 @@ %global uname hacluster %global pcmk_docdir %{_docdir}/%{name} -%global specversion 2 -%global upstream_version b5b0a7b +%global specversion 1 +%global upstream_version c72d970 %global upstream_prefix ClusterLabs-pacemaker # Compatibility macros for distros (fedora) that don't provide Python macros by default @@ -29,9 +29,12 @@ # to disable or enable specific features # Supported cluster stacks, must support at least one -%bcond_with cman %bcond_without corosync %bcond_with heartbeat +%bcond_with cman + +# Legacy stonithd fencing agents +%bcond_with stonithd # ESMTP is not available in RHEL, only in EPEL. Allow people to build # the RPM without ESMTP in case they choose not to use EPEL packages @@ -62,8 +65,8 @@ Name: pacemaker Summary: Scalable High-Availability cluster resource manager -Version: 1.1.7 -Release: %{pcmk_release}%{?dist}.1 +Version: 1.1.8 +Release: %{pcmk_release}%{?dist} License: GPLv2+ and LGPLv2+ Url: http://www.clusterlabs.org Group: System Environment/Daemons @@ -73,7 +76,6 @@ Group: System Environment/Daemons Source0: %{upstream_prefix}-%{upstream_version}.tar.gz BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX) AutoReqProv: on -Requires(pre): cluster-glue Requires: resource-agents Requires: %{name}-libs = %{version}-%{release} Requires: %{name}-cluster-libs = %{version}-%{release} @@ -87,6 +89,18 @@ Obsoletes: heartbeat < 3.0.4 Provides: heartbeat >= 3.0.4 %endif +%if %{defined _unitdir} +# Needed for systemd unit +Requires(post): systemd-sysv +Requires(post): systemd-units +Requires(preun): systemd-units +Requires(postun): systemd-units +%endif + +%if %{with heartbeat} +Requires(pre): cluster-glue +%endif + %if %{with snmp} Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version)) %endif @@ -101,7 +115,7 @@ BuildRequires: python-curses python-xml # Required for core functionality BuildRequires: automake autoconf libtool pkgconfig python libtool-ltdl-devel -BuildRequires: glib2-devel cluster-glue-libs-devel libxml2-devel libxslt-devel +BuildRequires: glib2-devel libxml2-devel libxslt-devel libuuid-devel BuildRequires: pkgconfig python-devel gcc-c++ bzip2-devel pam-devel %if 0%{?suse_version} >= 1100 @@ -151,7 +165,11 @@ BuildRequires: corosynclib-devel %if %{with heartbeat} # Do not require heartbeat, the admin should select which stack to use and install it -BuildRequires: heartbeat-devel heartbeat-libs >= 3.0.0 +BuildRequires: cluster-glue-libs-devel heartbeat-devel heartbeat-libs >= 3.0.0 +%endif + +%if %{with stonithd} +BuildRequires: cluster-glue-libs-devel %endif %if !%{rawhide} @@ -226,13 +244,13 @@ Summary: Pacemaker development package Group: Development/Libraries Requires: %{name}-libs = %{version}-%{release} Requires: %{name}-cluster-libs = %{version}-%{release} -Requires: cluster-glue-libs-devel libtool-ltdl-devel +Requires: libtool-ltdl-devel Requires: libxml2-devel libxslt-devel bzip2-devel glib2-devel %if %{with corosync} Requires: corosynclib-devel %endif %if %{with heartbeat} -Requires: heartbeat-devel +Requires: cluster-glue-libs-devel heartbeat-devel %endif %description -n %{name}-libs-devel @@ -293,22 +311,20 @@ docdir=%{pcmk_docdir} %{configure} \ %{?with_gcov: --with-gcov} \ --with-initdir=%{_initrddir} \ --localstatedir=%{_var} \ - --with-version=%{version}-%{release} \ - --enable-fatal-warnings=no + --with-version=%{version}-%{release} -make %{_smp_mflags} V=1 docdir=%{pcmk_docdir} +make %{_smp_mflags} V=1 docdir=%{pcmk_docdir} all %install rm -rf %{buildroot} make DESTDIR=%{buildroot} docdir=%{pcmk_docdir} V=1 install mkdir -p ${RPM_BUILD_ROOT}%{_sysconfdir}/sysconfig +mkdir -p ${RPM_BUILD_ROOT}%{_var}/lib/pacemaker/cores install -m 644 mcp/pacemaker.sysconfig ${RPM_BUILD_ROOT}%{_sysconfdir}/sysconfig/pacemaker # Scripts that should be executable -chmod a+x %{buildroot}/%{_libexecdir}/pacemaker/hb2openais-helper.py chmod a+x %{buildroot}/%{_datadir}/pacemaker/tests/cts/CTSlab.py -chmod a+x %{buildroot}/%{_datadir}/pacemaker/tests/cts/extracttests.py # These are not actually scripts find %{buildroot} -name '*.xml' -type f -print0 | xargs -0 chmod a-x @@ -321,8 +337,6 @@ find %{buildroot} -name '*.a' -type f -print0 | xargs -0 rm -f find %{buildroot} -name '*.la' -type f -print0 | xargs -0 rm -f # Do not package these either -rm -f %{buildroot}/%{_libexecdir}/pacemaker/hb2openais-helper.* -rm -f %{buildroot}/%{_libexecdir}/pacemaker/crm_primitive.* rm -f %{buildroot}/%{_libdir}/service_crm.so %if %{with gcov} @@ -339,14 +353,23 @@ done rm -rf %{buildroot} %post +%if %{defined _unitdir} +/bin/systemctl daemon-reload >/dev/null 2>&1 || : +%endif /sbin/chkconfig --add pacemaker || : %preun if [ $1 -eq 0 ]; then + # Package removal, not upgrade /sbin/service pacemaker stop &>/dev/null || : /sbin/chkconfig --del pacemaker || : fi +%pre -n %{name}-libs +getent group %{gname} >/dev/null || groupadd -r %{gname} +getent passwd %{uname} >/dev/null || useradd -r -g %{gname} -s /sbin/nologin -c "heartbeat user" %{uname} +exit 0 + %post -n %{name}-libs -p /sbin/ldconfig %postun -n %{name}-libs -p /sbin/ldconfig @@ -362,8 +385,10 @@ fi %exclude %{_datadir}/pacemaker/tests %config(noreplace) %{_sysconfdir}/sysconfig/pacemaker +%if %{with corosync} %{_sbindir}/pacemakerd %{_initrddir}/pacemaker +%endif %if %{defined _unitdir} %{_unitdir}/pacemaker.service @@ -371,9 +396,12 @@ fi %{_datadir}/pacemaker %{_datadir}/snmp/mibs/PCMK-MIB.txt -%{_libdir}/heartbeat/* %{_libexecdir}/pacemaker/* +%if %{with heartbeat} +%{_libdir}/heartbeat/* +%endif + %{_sbindir}/crm_attribute %{_sbindir}/crm_master %{_sbindir}/crm_node @@ -387,8 +415,6 @@ fi %if %{with heartbeat} %{_sbindir}/crm_uuid -%else -%exclude %{_sbindir}/crm_uuid %endif %doc %{_mandir}/man7/* @@ -397,15 +423,19 @@ fi %doc %{_mandir}/man8/crm_node.* %doc %{_mandir}/man8/crm_master.* %doc %{_mandir}/man8/fence_pcmk.* +%if %{with corosync} %doc %{_mandir}/man8/pacemakerd.* +%endif %doc %{_mandir}/man8/stonith_admin.* %doc COPYING %doc AUTHORS %doc ChangeLog -%dir %attr (750, %{uname}, %{gname}) %{_var}/lib/heartbeat/crm -%dir %attr (750, %{uname}, %{gname}) %{_var}/lib/pengine +%dir %attr (750, %{uname}, %{gname}) %{_var}/lib/pacemaker +%dir %attr (750, %{uname}, %{gname}) %{_var}/lib/pacemaker/cib +%dir %attr (750, %{uname}, %{gname}) %{_var}/lib/pacemaker/cores +%dir %attr (750, %{uname}, %{gname}) %{_var}/lib/pacemaker/pengine %ghost %dir %attr (750, %{uname}, %{gname}) %{_var}/run/crm %dir /usr/lib/ocf %dir /usr/lib/ocf/resource.d @@ -423,28 +453,27 @@ fi %defattr(-,root,root) %{_sbindir}/cibadmin %{_sbindir}/crm_diff +%{_sbindir}/crm_error %{_sbindir}/crm_failcount %{_sbindir}/crm_mon -%{_sbindir}/crm %{_sbindir}/crm_resource %{_sbindir}/crm_standby %{_sbindir}/crm_verify %{_sbindir}/crmadmin %{_sbindir}/iso8601 -%{_sbindir}/ptest %{_sbindir}/crm_shadow -%{_sbindir}/cibpipe %{_sbindir}/crm_simulate %{_sbindir}/crm_report %{_sbindir}/crm_ticket -%{py_sitedir}/crm %doc %{_mandir}/man8/* %exclude %{_mandir}/man8/attrd_updater.* %exclude %{_mandir}/man8/crm_attribute.* %exclude %{_mandir}/man8/crm_node.* %exclude %{_mandir}/man8/crm_master.* %exclude %{_mandir}/man8/fence_pcmk.* +%if %{with corosync} %exclude %{_mandir}/man8/pacemakerd.* +%endif %exclude %{_mandir}/man8/stonith_admin.* %doc COPYING @@ -453,7 +482,10 @@ fi %files -n %{name}-libs %defattr(-,root,root) + %{_libdir}/libcib.so.* +%{_libdir}/liblrmd.so.* +%{_libdir}/libcrmservice.so.* %{_libdir}/libcrmcommon.so.* %{_libdir}/libpe_status.so.* %{_libdir}/libpe_rules.so.* @@ -494,6 +526,23 @@ fi %doc AUTHORS %changelog + +* Wed Aug 8 2012 Andrew Beekhof 1.1.8-0.1-c72d970.git +- Pre-release 1.1.8 build + + New IPC implementation from libqb + + New logging implementation from libqb + + Quieter - info, debug and trace logs are no longer sent to syslog + + Dropped dependancy on cluster-glue + + Config and core directories no longer located in heartbeat directories + + Support for managing systemd services + + Rewritten local resource management daemon + + Version bumps for every shared library due to API cleanups + + Removes crm shell, install/use pcs shell and GUI instead +- New upstream tarball: c72d970 + Changesets: 764 + Diff: 2073 files changed, 102539 insertions(+), 69977 deletions(-) +- See included ChangeLog file or https://raw.github.com/ClusterLabs/pacemaker/master/ChangeLog for details + * Fri Jul 20 2012 Fedora Release Engineering - 1.1.7-2.1 - Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild diff --git a/sources b/sources index fe09050..93d4f46 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -61076a946cf2ba549dce1458e2ef76e2 ClusterLabs-pacemaker-b5b0a7b.tar.gz +35e7445bf74a99833da6d544eeef08cd ClusterLabs-pacemaker-c72d970.tar.gz