diff --git a/sanlock-3.1.0.tar.bz2 b/sanlock-3.1.0.tar.bz2 deleted file mode 100644 index 4688f3d..0000000 --- a/sanlock-3.1.0.tar.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:9da4a132e356cfb8132c47a0bf28198aaf69397e41bde800b90550d759db9756 -size 126722 diff --git a/sanlock-3.2.2.tar.xz b/sanlock-3.2.2.tar.xz new file mode 100644 index 0000000..bca202f --- /dev/null +++ b/sanlock-3.2.2.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a5a2cc0263ae2912b6e4c32544cb603e936ab22716eb4cc57f8d7b2d3c3959a7 +size 149116 diff --git a/sanlock.changes b/sanlock.changes index 38fa1f1..cce3f58 100644 --- a/sanlock.changes +++ b/sanlock.changes @@ -1,3 +1,21 @@ +------------------------------------------------------------------- +Sat Mar 21 16:26:54 UTC 2015 - p.drouand@gmail.com + +- Update to version 3.2.2 + * reset: native timeout + * reset: Reduce logging noise to stderr and syslog + * sanlock, reset: coverity fixes +- Refactor specfile to be policy compliant +- Use download Url as source +- Add xz build requires; needed as the source tarball is compressed + with xz +- Do not provide both systemd and sysvinit support on a same system; + it's redundant +- Add systemd backward compatibility links +- Update patchs: + * suse-no-date-time.patch + * suse-systemd.patch + ------------------------------------------------------------------- Fri Jan 10 10:16:16 MST 2014 - jfehlig@suse.com diff --git a/sanlock.spec b/sanlock.spec index cd0c3d6..8efdf0b 100644 --- a/sanlock.spec +++ b/sanlock.spec @@ -1,7 +1,7 @@ # # spec file for package sanlock # -# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2015 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -24,8 +24,8 @@ %endif Name: sanlock -Version: 3.1.0 -Release: 1%{?dist} +Version: 3.2.2 +Release: 0 Summary: A shared disk lock manager License: GPL-2.0 and GPL-2.0+ and LGPL-2.1+ Group: System/Base @@ -39,13 +39,14 @@ BuildRequires: python-devel %if %{with_systemd} BuildRequires: systemd %{?systemd_requires} +%else +Requires(pre): %insserv_prereq %endif -Requires(pre): %insserv_prereq %fillup_prereq +BuildRequires: xz +Requires(pre): %fillup_prereq Requires: %{name}-lib = %{version}-%{release} Recommends: logrotate -# Latest version available at -# https://fedorahosted.org/releases/s/a/sanlock/ -Source0: %{name}-%{version}.tar.bz2 +Source0: https://git.fedorahosted.org/cgit/sanlock.git/snapshot/%{name}-%{version}.tar.xz Source1: sanlock.init Source2: sysconfig.sanlock Source3: wdmd.init @@ -66,12 +67,56 @@ sanlock uses disk paxos to manage leases on shared storage. Hosts connected to a common SAN can use this to synchronize their access to the shared disks. +%package -n libsanlock1 +Provides: sanlock-lib +Summary: A shared disk lock manager library +Group: Development/Libraries/C and C++ + +%description -n libsanlock1 +The %{name}-lib package contains the runtime libraries for sanlock, +a shared disk lock manager. +Hosts connected to a common SAN can use this to synchronize their +access to the shared disks. + +%package -n python-%name +Provides: sanlock-python +Summary: Python bindings for the sanlock library +Group: Development/Libraries/Python +Requires: libsanlock1 = %{version}-%{release} + +%description -n python-%name +The %{name}-python package contains a module that permits applications +written in the Python programming language to use the interface +supplied by the sanlock library. + +%package devel +Summary: Development files for %{name} +Group: Development/Libraries/C and C++ +Requires: libsanlock1 = %{version}-%{release} + +%description devel +The %{name}-devel package contains libraries and header files for +developing applications that use %{name}. + +%if %{with_fence_sanlockd} +%package -n fence-sanlock +Summary: Fence agent using sanlock and wdmd +Group: System Environment/Base +Requires: sanlock = %{version}-%{release} + +%description -n fence-sanlock +The fence-sanlock package contains the fence agent and +daemon for using sanlock and wdmd as a cluster fence agent. +%endif + %prep %setup -q %patch100 %patch101 %patch102 +%if %{with_systemd} %patch103 -p1 +%endif %patch104 -p1 %build @@ -99,31 +144,32 @@ make -C fence_sanlock \ install LIBDIR=%{_libdir} \ DESTDIR=$RPM_BUILD_ROOT %endif -install -D -m 755 %SOURCE1 $RPM_BUILD_ROOT/etc/init.d/sanlock -ln -s /etc/init.d/sanlock $RPM_BUILD_ROOT%{_sbindir}/rcsanlock install -D -m 755 %SOURCE2 $RPM_BUILD_ROOT/%{_localstatedir}/adm/fillup-templates/sysconfig.sanlock -install -D -m 755 %SOURCE3 $RPM_BUILD_ROOT/etc/init.d/wdmd -ln -s /etc/init.d/wdmd $RPM_BUILD_ROOT%{_sbindir}/rcwdmd install -D -m 755 %SOURCE4 $RPM_BUILD_ROOT/%{_localstatedir}/adm/fillup-templates/sysconfig.wdmd -%if %{with_fence_sanlockd} -install -D -m 755 %SOURCE5 $RPM_BUILD_ROOT/%{_initddir}/fence_sanlockd -ln -s /etc/init.d/fence_sanlockd $RPM_BUILD_ROOT%{_sbindir}/rcfence_sanlockd -%endif %if %{with_systemd} install -D -m 755 init.d/sanlock.service $RPM_BUILD_ROOT/%{_unitdir}/sanlock.service +ln -s /usr/sbin/service %{buildroot}%{_sbindir}/rcsanlock install -D -m 755 init.d/wdmd.service $RPM_BUILD_ROOT/%{_unitdir}/wdmd.service +ln -s /usr/sbin/service %{buildroot}%{_sbindir}/rcwdmd %if %{with_fence_sanlockd} install -D -m 0755 init.d/fence_sanlockd $RPM_BUILD_ROOT/lib/systemd/systemd-fence_sanlockd install -D -m 0644 init.d/fence_sanlockd.service $RPM_BUILD_ROOT/%{_unitdir}/fence_sanlockd.service +ln -s /usr/sbin/service %{buildroot}%{_sbindir}/rcfence_sanlockd +%endif +%else +install -D -m 755 %SOURCE1 $RPM_BUILD_ROOT/etc/init.d/sanlock +ln -s /etc/init.d/sanlock $RPM_BUILD_ROOT%{_sbindir}/rcsanlock +install -D -m 755 %SOURCE3 $RPM_BUILD_ROOT/etc/init.d/wdmd +ln -s /etc/init.d/wdmd $RPM_BUILD_ROOT%{_sbindir}/rcwdmd +%if %{with_fence_sanlockd} +install -D -m 755 %SOURCE5 $RPM_BUILD_ROOT/%{_initddir}/fence_sanlockd +ln -s /etc/init.d/fence_sanlockd $RPM_BUILD_ROOT%{_sbindir}/rcfence_sanlockd %endif %endif install -Dm 0644 src/logrotate.sanlock \ $RPM_BUILD_ROOT/etc/logrotate.d/sanlock -%clean -rm -rf $RPM_BUILD_ROOT - %pre %{_bindir}/getent group sanlock > /dev/null || %{_sbindir}/groupadd \ -g 179 sanlock @@ -138,36 +184,71 @@ rm -rf $RPM_BUILD_ROOT %post %if %{with_systemd} %service_add_post wdmd.service sanlock.service +%else +%restart_on_update wdmd +%restart_on_update sanlock %endif %fillup_only -n wdmd %fillup_only -n sanlock -%restart_on_update wdmd -%restart_on_update sanlock + +%post -n libsanlock1 -p /sbin/ldconfig + +%if %{with_fence_sanlockd} +%post -n fence-sanlock +%if %{with_systemd} +%service_add_post fence_sanlockd.service +%endif +%restart_on_update fence_sanlockd +#if [ $1 -eq 1 ] ; then +#ccs_update_schema > /dev/null 2>&1 ||: +#fi +%endif %preun %if %{with_systemd} %service_del_preun wdmd.service sanlock.service -%endif +%else %stop_on_removal wdmd %stop_on_removal sanlock +%endif + +%if %{with_fence_sanlockd} +%preun-n fence-sanlock +%if %{with_systemd} +%service_del_preun fence_sanlockd.service +%else +%stop_on_removal fence_sanlockd +%endif +%endif %postun %if %{with_systemd} %service_del_postun wdmd.service sanlock.service -%endif +%else %insserv_cleanup +%endif + +%postun -n libsanlock1 -p /sbin/ldconfig + +%if %{with_fence_sanlockd} +%postun -n fence-sanlock +%if %{with_systemd} +%service_del_postun fence_sanlockd.service +%endif +%endif %files %defattr(-,root,root,-) -/etc/init.d/sanlock %{_sbindir}/rcsanlock %{_localstatedir}/adm/fillup-templates/sysconfig.sanlock -/etc/init.d/wdmd %{_sbindir}/rcwdmd %{_localstatedir}/adm/fillup-templates/sysconfig.wdmd %if %{with_systemd} %{_unitdir}/sanlock.service %{_unitdir}/wdmd.service +%else +/etc/init.d/sanlock +/etc/init.d/wdmd %endif %{_sbindir}/sanlock %{_sbindir}/wdmd @@ -175,53 +256,18 @@ rm -rf $RPM_BUILD_ROOT %{_mandir}/man8/sanlock* %config(noreplace) %{_sysconfdir}/logrotate.d/sanlock -%package -n libsanlock1 -Provides: sanlock-lib -Summary: A shared disk lock manager library -Group: Development/Libraries/C and C++ - -%description -n libsanlock1 -The %{name}-lib package contains the runtime libraries for sanlock, -a shared disk lock manager. -Hosts connected to a common SAN can use this to synchronize their -access to the shared disks. - -%post -n libsanlock1 -p /sbin/ldconfig - -%postun -n libsanlock1 -p /sbin/ldconfig - %files -n libsanlock1 %defattr(-,root,root,-) %{_libdir}/libsanlock.so.* %{_libdir}/libsanlock_client.so.* %{_libdir}/libwdmd.so.* -%package -n python-%name -Provides: sanlock-python -Summary: Python bindings for the sanlock library -Group: Development/Libraries/Python -Requires: libsanlock1 = %{version}-%{release} - -%description -n python-%name -The %{name}-python package contains a module that permits applications -written in the Python programming language to use the interface -supplied by the sanlock library. - -%files -n python-%name +%files -n python-%name %defattr(-,root,root,-) -%{python_sitearch}/Sanlock-1.0-py*.egg-info +%{python_sitearch}/sanlock_python-%{version}_-py*.egg-info %{python_sitearch}/sanlock.so -%package devel -Summary: Development files for %{name} -Group: Development/Libraries/C and C++ -Requires: libsanlock1 = %{version}-%{release} - -%description devel -The %{name}-devel package contains libraries and header files for -developing applications that use %{name}. - -%files devel +%files devel %defattr(-,root,root,-) %{_libdir}/libwdmd.so %{_includedir}/wdmd.h @@ -234,46 +280,18 @@ developing applications that use %{name}. %{_includedir}/sanlock_direct.h %if %{with_fence_sanlockd} -%package -n fence-sanlock -Summary: Fence agent using sanlock and wdmd -Group: System Environment/Base -Requires: sanlock = %{version}-%{release} - -%description -n fence-sanlock -The fence-sanlock package contains the fence agent and -daemon for using sanlock and wdmd as a cluster fence agent. - -%files -n fence-sanlock +%files -n fence-sanlock %defattr(-,root,root,-) -/etc/init.d/fence_sanlockd %{_sbindir}/fence_sanlockd %if %{with_systemd} /lib/systemd/systemd-fence_sanlockd %{_unitdir}/fence_sanlockd.service +%else +/etc/init.d/fence_sanlockd %endif %{_sbindir}/fence_sanlock %{_sbindir}/fence_sanlockd %{_mandir}/man8/fence_sanlock* - -%post -n fence-sanlock -%if %{with_systemd} -%service_add_post fence_sanlockd.service -%endif -%restart_on_update fence_sanlockd -#if [ $1 -eq 1 ] ; then -#ccs_update_schema > /dev/null 2>&1 ||: -#fi - -%preun -n fence-sanlock -%if %{with_systemd} -%service_del_preun fence_sanlockd.service -%endif -%stop_on_removal fence_sanlockd - -%postun -n fence-sanlock -%if %{with_systemd} -%service_del_postun fence_sanlockd.service -%endif %endif %changelog diff --git a/suse-no-date-time.patch b/suse-no-date-time.patch index 3fd75ff..0aba665 100644 --- a/suse-no-date-time.patch +++ b/suse-no-date-time.patch @@ -2,10 +2,10 @@ Index: sanlock-3.1.0/src/main.c =================================================================== --- sanlock-3.1.0.orig/src/main.c +++ sanlock-3.1.0/src/main.c -@@ -1870,8 +1870,8 @@ static int read_command_line(int argc, c +@@ -1913,8 +1913,8 @@ + } - if (!strcmp(arg1, "version") || !strcmp(arg1, "--version") || - !strcmp(arg1, "-V")) { + if (!strcmp(arg1, "--version") || !strcmp(arg1, "-V")) { - printf("%s %s (built %s %s)\n", - argv[0], VERSION, __DATE__, __TIME__); + printf("%s %s\n", diff --git a/suse-systemd.patch b/suse-systemd.patch index cce5e3c..09a91a2 100644 --- a/suse-systemd.patch +++ b/suse-systemd.patch @@ -5,7 +5,6 @@ Index: sanlock-3.1.0/init.d/sanlock.service @@ -6,8 +6,10 @@ Wants=wdmd.service [Service] Type=forking - ControlGroup=cpu:/ -ExecStart=/lib/systemd/systemd-sanlock start -ExecStop=/lib/systemd/systemd-sanlock stop +EnvironmentFile=-/etc/sysconfig/sanlock @@ -15,6 +14,7 @@ Index: sanlock-3.1.0/init.d/sanlock.service [Install] WantedBy=multi-user.target + Index: sanlock-3.1.0/init.d/wdmd.service =================================================================== --- sanlock-3.1.0.orig/init.d/wdmd.service @@ -22,7 +22,6 @@ Index: sanlock-3.1.0/init.d/wdmd.service @@ -5,8 +5,10 @@ After=syslog.target [Service] Type=forking - ControlGroup=cpu:/ -ExecStart=/lib/systemd/systemd-wdmd start -ExecStop=/lib/systemd/systemd-wdmd stop +EnvironmentFile=-/etc/sysconfig/wdmd