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

View File

@ -20,7 +20,6 @@
%if ! %{defined _fillupdir}
%define _fillupdir /var/adm/fillup-templates
%endif
Name: btrfsmaintenance
Version: 0.3.1
Release: 0
@ -31,19 +30,17 @@ Url: https://github.com/kdave/btrfsmaintenance
Source0: %{name}-%{version}.tar.bz2
# 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
# PATCH-FIX-UPSTREAM pull-request-36.patch -- Add systemd timer
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
BuildRequires: systemd
Requires: btrfsprogs
Requires: zypp-plugin-python
Requires: libzypp(plugin:commit)
#Recommends: cron
Supplements: btrfsprogs
Requires: btrfsprogs
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildArch: noarch
%{?systemd_requires}
%if 0%{?suse_version} >= 1210
BuildRequires: systemd
%endif
%description
Scripts for btrfs maintenance tasks like periodic scrub, balance, trim or defrag
@ -51,20 +48,16 @@ on selected mountpoints or directories.
%prep
%setup -q
%if 0%{?suse_version} > 1320
%if 0%{?suse_version} > 1320
%patch0
%endif
%patch1 -p1
%patch2 -p0
%patch2
%build
%install
# fix build error on openSUSE and SLE
mkdir -p %{buildroot}%{_sysconfdir}/cron.daily/
mkdir -p %{buildroot}%{_sysconfdir}/cron.weekly/
mkdir -p %{buildroot}%{_sysconfdir}/cron.monthly/
# scripts
install -m 755 -d %{buildroot}%{_datadir}/%{name}
install -m 755 btrfs-defrag.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 644 btrfsmaintenance-functions %{buildroot}%{_datadir}/%{name}
%if 0%{?suse_version} >= 1210
# systemd services and timers
install -m 755 -d %{buildroot}%{_unitdir}
install -m 644 -D btrfsmaintenance-refresh.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 755 -d %{buildroot}%{_sbindir}
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
install -m 755 -D btrfs-defrag-plugin.py %{buildroot}/usr/lib/zypp/plugins/commit
# zypp plugin
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 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
# if the new service files don't exist, we migrate from
# 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
%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
%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
%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
%defattr(-,root,root)
%doc COPYING README.md
%{_fillupdir}/sysconfig.btrfsmaintenance
%dir %{_datadir}/%{name}
%{_datadir}/%{name}/*
%dir /usr/lib/zypp/
%dir /usr/lib/zypp/plugins
%dir /usr/lib/zypp/plugins/commit
/usr/lib/zypp/plugins/commit/btrfs-defrag-plugin.py
%if 0%{?suse_version} >= 1210
%dir %{_libexecdir}/zypp/
%dir %{_libexecdir}/zypp/plugins
%dir %{_libexecdir}/zypp/plugins/commit
%{_libexecdir}/zypp/plugins/commit/btrfs-defrag-plugin.py
%{_unitdir}/btrfsmaintenance-refresh.service
%{_unitdir}/btrfs-balance.service
%{_unitdir}/btrfs-defrag.service
@ -152,8 +123,5 @@ fi
%{_unitdir}/btrfs-scrub.timer
%{_unitdir}/btrfs-trim.timer
%{_sbindir}/rcbtrfsmaintenance-refresh
%else
%{_sysconfdir}/cron.hourly/btrfsmaintenance-refresh-cron.sh
%endif
%changelog

View File

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