Accepting request 559643 from home:1Antoine1:branches:filesystems

- Fix systemd timers enabled even if period is set to none:
  * Micro change in pull-request-36.patch.
- Clean spec file:
  * Removed support for suse_version <= 1210.
  * Removed call to btrfsmaintenance-refresh-cron.sh upon deletion
    (not needed anymore since we use systemd timers which are
     handled by macros).
  * Ran spec-cleaner.

OBS-URL: https://build.opensuse.org/request/show/559643
OBS-URL: https://build.opensuse.org/package/show/filesystems/btrfsmaintenance?expand=0&rev=30
This commit is contained in:
David Sterba 2018-01-15 15:09:04 +00:00 committed by Git OBS Bridge
parent 9737520004
commit dfd880466e
3 changed files with 33 additions and 53 deletions

View File

@ -1,3 +1,15 @@
-------------------------------------------------------------------
Fri Dec 22 18:42:10 UTC 2017 - antoine.belvire@opensuse.org
- Fix systemd timers enabled even if period is set to none:
* Micro change in pull-request-36.patch.
- Clean spec file:
* Removed support for suse_version <= 1210.
* Removed call to btrfsmaintenance-refresh-cron.sh upon deletion
(not needed anymore since we use systemd timers which are
handled by macros).
* Ran spec-cleaner.
------------------------------------------------------------------- -------------------------------------------------------------------
Sun Dec 17 12:18:45 CET 2017 - kukuk@suse.de Sun Dec 17 12:18:45 CET 2017 - kukuk@suse.de

View File

@ -20,7 +20,6 @@
%if ! %{defined _fillupdir} %if ! %{defined _fillupdir}
%define _fillupdir /var/adm/fillup-templates %define _fillupdir /var/adm/fillup-templates
%endif %endif
Name: btrfsmaintenance Name: btrfsmaintenance
Version: 0.3.1 Version: 0.3.1
Release: 0 Release: 0
@ -31,19 +30,17 @@ Url: https://github.com/kdave/btrfsmaintenance
Source0: %{name}-%{version}.tar.bz2 Source0: %{name}-%{version}.tar.bz2
# PATCH-FIX-OPENSUSE btrfsmaintenance-0.3.1-fix-rpm-db-path.patch -- Fix RPM database path for Tumbleweed # PATCH-FIX-OPENSUSE btrfsmaintenance-0.3.1-fix-rpm-db-path.patch -- Fix RPM database path for Tumbleweed
Patch0: btrfsmaintenance-0.3.1-fix-rpm-db-path.patch Patch0: btrfsmaintenance-0.3.1-fix-rpm-db-path.patch
# PATCH-FIX-UPSTREAM pull-request-36.patch -- Add systemd timer
Patch1: pull-request-36.patch Patch1: pull-request-36.patch
# PATCH-FIX-UPSTREAM btrfsmaintenance-switch-to-timer.patch -- Refresh systemd timers, not cron tasks
Patch2: btrfsmaintenance-switch-to-timer.patch Patch2: btrfsmaintenance-switch-to-timer.patch
BuildRequires: systemd
Requires: btrfsprogs
Requires: zypp-plugin-python Requires: zypp-plugin-python
Requires: libzypp(plugin:commit) Requires: libzypp(plugin:commit)
#Recommends: cron
Supplements: btrfsprogs Supplements: btrfsprogs
Requires: btrfsprogs
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildArch: noarch BuildArch: noarch
%{?systemd_requires} %{?systemd_requires}
%if 0%{?suse_version} >= 1210
BuildRequires: systemd
%endif
%description %description
Scripts for btrfs maintenance tasks like periodic scrub, balance, trim or defrag Scripts for btrfs maintenance tasks like periodic scrub, balance, trim or defrag
@ -51,20 +48,16 @@ on selected mountpoints or directories.
%prep %prep
%setup -q %setup -q
%if 0%{?suse_version} > 1320 %if 0%{?suse_version} > 1320
%patch0 %patch0
%endif %endif
%patch1 -p1 %patch1 -p1
%patch2 -p0 %patch2
%build %build
%install %install
# fix build error on openSUSE and SLE # scripts
mkdir -p %{buildroot}%{_sysconfdir}/cron.daily/
mkdir -p %{buildroot}%{_sysconfdir}/cron.weekly/
mkdir -p %{buildroot}%{_sysconfdir}/cron.monthly/
install -m 755 -d %{buildroot}%{_datadir}/%{name} install -m 755 -d %{buildroot}%{_datadir}/%{name}
install -m 755 btrfs-defrag.sh %{buildroot}%{_datadir}/%{name} install -m 755 btrfs-defrag.sh %{buildroot}%{_datadir}/%{name}
install -m 755 btrfs-balance.sh %{buildroot}%{_datadir}/%{name} install -m 755 btrfs-balance.sh %{buildroot}%{_datadir}/%{name}
@ -73,7 +66,7 @@ install -m 755 btrfs-trim.sh %{buildroot}%{_datadir}/%{name}
install -m 755 btrfsmaintenance-refresh-cron.sh %{buildroot}%{_datadir}/%{name} install -m 755 btrfsmaintenance-refresh-cron.sh %{buildroot}%{_datadir}/%{name}
install -m 644 btrfsmaintenance-functions %{buildroot}%{_datadir}/%{name} install -m 644 btrfsmaintenance-functions %{buildroot}%{_datadir}/%{name}
%if 0%{?suse_version} >= 1210 # systemd services and timers
install -m 755 -d %{buildroot}%{_unitdir} install -m 755 -d %{buildroot}%{_unitdir}
install -m 644 -D btrfsmaintenance-refresh.service %{buildroot}%{_unitdir} install -m 644 -D btrfsmaintenance-refresh.service %{buildroot}%{_unitdir}
install -m 644 -D btrfs-balance.service %{buildroot}%{_unitdir} install -m 644 -D btrfs-balance.service %{buildroot}%{_unitdir}
@ -86,62 +79,40 @@ install -m 644 -D btrfs-scrub.timer %{buildroot}%{_unitdir}
install -m 644 -D btrfs-trim.timer %{buildroot}%{_unitdir} install -m 644 -D btrfs-trim.timer %{buildroot}%{_unitdir}
install -m 755 -d %{buildroot}%{_sbindir} install -m 755 -d %{buildroot}%{_sbindir}
ln -s %{_sbindir}/service %{buildroot}%{_sbindir}/rcbtrfsmaintenance-refresh ln -s %{_sbindir}/service %{buildroot}%{_sbindir}/rcbtrfsmaintenance-refresh
%else
# just a hack, but sufficient
install -m 755 -d %{buildroot}%{_sysconfdir}/cron.hourly
ln -s %{_datadir}/%{name}/btrfsmaintenance-refresh-cron.sh %{buildroot}%{_sysconfdir}/cron.hourly/
%endif
install -m 755 -d %{buildroot}/usr/lib/zypp/plugins/commit # zypp plugin
install -m 755 -D btrfs-defrag-plugin.py %{buildroot}/usr/lib/zypp/plugins/commit install -m 755 -d %{buildroot}%{_libexecdir}/zypp/plugins/commit
install -m 755 -D btrfs-defrag-plugin.py %{buildroot}%{_libexecdir}/zypp/plugins/commit
# config
install -m 755 -d %{buildroot}%{_fillupdir} install -m 755 -d %{buildroot}%{_fillupdir}
install -m 644 -D sysconfig.btrfsmaintenance %{buildroot}%{_fillupdir} install -m 644 -D sysconfig.btrfsmaintenance %{buildroot}%{_fillupdir}
%post
%service_add_post btrfsmaintenance-refresh.service btrfs-balance.service btrfs-balance.timer btrfs-defrag.service btrfs-defrag.timer btrfs-scrub.service btrfs-scrub.timer btrfs-trim.service btrfs-trim.timer
%{fillup_only btrfsmaintenance}
%if 0%{?suse_version} >= 1210
%pre %pre
# if the new service files don't exist, we migrate from # if the new service files don't exist, we migrate from
# old version with old script, remove cron symlinks # old version with old script, remove cron symlinks
[ ! -f %{_unitdir}/btrfs-balance.timer -a -f %{_datadir}/%{name}/btrfsmaintenance-refresh-cron.sh ] && %{_datadir}/%{name}/btrfsmaintenance-refresh-cron.sh uninstall [ ! -f %{_unitdir}/btrfs-balance.timer -a -f %{_datadir}/%{name}/btrfsmaintenance-refresh-cron.sh ] && %{_datadir}/%{name}/btrfsmaintenance-refresh-cron.sh uninstall
%service_add_pre btrfsmaintenance-refresh.service btrfs-balance.service btrfs-balance.timer btrfs-defrag.service btrfs-defrag.timer btrfs-scrub.service btrfs-scrub.timer btrfs-trim.service btrfs-trim.timer %service_add_pre btrfsmaintenance-refresh.service btrfs-balance.service btrfs-balance.timer btrfs-defrag.service btrfs-defrag.timer btrfs-scrub.service btrfs-scrub.timer btrfs-trim.service btrfs-trim.timer
%post
%service_add_post btrfsmaintenance-refresh.service btrfs-balance.service btrfs-balance.timer btrfs-defrag.service btrfs-defrag.timer btrfs-scrub.service btrfs-scrub.timer btrfs-trim.service btrfs-trim.timer
%{fillup_only btrfsmaintenance}
%preun %preun
%service_del_preun btrfsmaintenance-refresh.service btrfs-balance.service btrfs-balance.timer btrfs-defrag.service btrfs-defrag.timer btrfs-scrub.service btrfs-scrub.timer btrfs-trim.service btrfs-trim.timer %service_del_preun btrfsmaintenance-refresh.service btrfs-balance.service btrfs-balance.timer btrfs-defrag.service btrfs-defrag.timer btrfs-scrub.service btrfs-scrub.timer btrfs-trim.service btrfs-trim.timer
if [ $1 -eq 0 ]; then
# Remove cron files in %%preun only if it's a package removal.
# If it's an upgrade, the %%post section of the new package has
# already refreshed the cron links, so we shall not remove them.
%{_datadir}/%{name}/btrfsmaintenance-refresh-cron.sh systemd-timer uninstall
fi
%postun %postun
%service_del_postun btrfsmaintenance-refresh.service btrfs-balance.service btrfs-balance.timer btrfs-defrag.service btrfs-defrag.timer btrfs-scrub.service btrfs-scrub.timer btrfs-trim.service btrfs-trim.timer %service_del_postun btrfsmaintenance-refresh.service btrfs-balance.service btrfs-balance.timer btrfs-defrag.service btrfs-defrag.timer btrfs-scrub.service btrfs-scrub.timer btrfs-trim.service btrfs-trim.timer
%endif
%if 0%{?suse_version} < 1210
%preun
if [ $1 -eq 0 ]; then
%{_datadir}/%{name}/btrfsmaintenance-refresh-cron.sh uninstall
fi
%endif
%files %files
%defattr(-,root,root)
%doc COPYING README.md %doc COPYING README.md
%{_fillupdir}/sysconfig.btrfsmaintenance %{_fillupdir}/sysconfig.btrfsmaintenance
%dir %{_datadir}/%{name} %dir %{_datadir}/%{name}
%{_datadir}/%{name}/* %{_datadir}/%{name}/*
%dir /usr/lib/zypp/ %dir %{_libexecdir}/zypp/
%dir /usr/lib/zypp/plugins %dir %{_libexecdir}/zypp/plugins
%dir /usr/lib/zypp/plugins/commit %dir %{_libexecdir}/zypp/plugins/commit
/usr/lib/zypp/plugins/commit/btrfs-defrag-plugin.py %{_libexecdir}/zypp/plugins/commit/btrfs-defrag-plugin.py
%if 0%{?suse_version} >= 1210
%{_unitdir}/btrfsmaintenance-refresh.service %{_unitdir}/btrfsmaintenance-refresh.service
%{_unitdir}/btrfs-balance.service %{_unitdir}/btrfs-balance.service
%{_unitdir}/btrfs-defrag.service %{_unitdir}/btrfs-defrag.service
@ -152,8 +123,5 @@ fi
%{_unitdir}/btrfs-scrub.timer %{_unitdir}/btrfs-scrub.timer
%{_unitdir}/btrfs-trim.timer %{_unitdir}/btrfs-trim.timer
%{_sbindir}/rcbtrfsmaintenance-refresh %{_sbindir}/rcbtrfsmaintenance-refresh
%else
%{_sysconfdir}/cron.hourly/btrfsmaintenance-refresh-cron.sh
%endif
%changelog %changelog

View File

@ -277,7 +277,7 @@ index da68283..7e92170 100755
case "$PERIOD" in case "$PERIOD" in
- daily|weekly|monthly) - daily|weekly|monthly)
+ uninstall) + uninstall|none)
+ systemctl stop "$SERVICE".timer &> /dev/null + systemctl stop "$SERVICE".timer &> /dev/null
+ systemctl disable "$SERVICE".timer &> /dev/null + systemctl disable "$SERVICE".timer &> /dev/null
+ rm -rf /etc/systemd/system/"$SERVICE".timer.d + rm -rf /etc/systemd/system/"$SERVICE".timer.d