commit 5a7e1737dc8c5e70df3f7ecde39c2f448c94640e
Author: Jacek Konieczny <j.koniec...@eggsoft.pl>
Date:   Thu Mar 9 14:24:27 2017 +0100

    add systemd-cronjobs support

 cronjob-logrotate.service |  7 +++++++
 cronjob-logrotate.timer   | 11 +++++++++++
 logrotate.spec            | 25 ++++++++++++++++++++++---
 3 files changed, 40 insertions(+), 3 deletions(-)
---
diff --git a/logrotate.spec b/logrotate.spec
index 91033e7..0c98dc4 100644
--- a/logrotate.spec
+++ b/logrotate.spec
@@ -20,7 +20,7 @@ Summary(tr.UTF-8):    Sistem günlüklerini yönlendirir, 
sıkıştırır ve mektup
 Summary(uk.UTF-8):     Ротує, компресує, видаляє та відправляє поштою лог-файли
 Name:          logrotate
 Version:       3.11.0
-Release:       1
+Release:       1.1
 License:       GPL v2+
 Group:         Applications/System
 Source0:       
https://github.com/logrotate/logrotate/releases/download/%{version}/%{name}-%{version}.tar.xz
@@ -29,6 +29,8 @@ Source1:      %{name}.conf
 Source2:       %{name}.sysconfig
 Source3:       %{name}.cron
 Source4:       %{name}.crontab
+Source5:       cronjob-%{name}.timer
+Source6:       cronjob-%{name}.service
 Patch0:                tabooext.patch
 Patch1:                %{name}-man.patch
 URL:           https://github.com/logrotate/logrotate
@@ -40,14 +42,16 @@ BuildRequires:      libselinux-devel
 %{?with_tests:BuildRequires:   libselinux-utils}
 %endif
 BuildRequires: popt-devel >= 1.3
+BuildRequires:  rpmbuild(macros) >= 1.644
 BuildRequires: tar >= 1:1.22
 BuildRequires: xz
 Requires(post):        coreutils
 Requires:      coreutils
-Requires:      crondaemon
+Requires:      cronjobs
 Requires:      filesystem >= 4.0-4
 Requires:      gzip
 Requires:      setup >= 2.4.6
+Requires:       systemd-units >= 38
 Suggests:      /bin/mail
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
@@ -143,7 +147,8 @@ Logrotate призначений для полегшення адміністр
 %install
 rm -rf $RPM_BUILD_ROOT
 install -d $RPM_BUILD_ROOT/etc/{cron.d,logrotate.d,sysconfig} \
-       $RPM_BUILD_ROOT{%{_libexecdir},%{_mandir},%{statdir}}
+       $RPM_BUILD_ROOT{%{_libexecdir},%{_mandir},%{statdir}} \
+       $RPM_BUILD_ROOT%{systemdunitdir}
 
 %{__make} install \
        DESTDIR=$RPM_BUILD_ROOT
@@ -152,6 +157,8 @@ cp -p %{SOURCE1} 
$RPM_BUILD_ROOT%{_sysconfdir}/logrotate.conf
 cp -p %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/%{name}
 install -p %{SOURCE3} $RPM_BUILD_ROOT%{_libexecdir}/%{name}
 cp -p %{SOURCE4} $RPM_BUILD_ROOT/etc/cron.d/%{name}
+cp -p %{SOURCE5} $RPM_BUILD_ROOT%{systemdunitdir}
+cp -p %{SOURCE6} $RPM_BUILD_ROOT%{systemdunitdir}
 > $RPM_BUILD_ROOT%{statdir}/%{name}.status
 
 %clean
@@ -166,6 +173,9 @@ fi
 %triggerpostun -- %{name} < 3.7.8-4
 %{__sed} -i -e 's,olddir /var/log/archiv$,olddir /var/log/archive,' 
%{_sysconfdir}/%{name}.conf %{_sysconfdir}/logrotate.d/* || :
 
+%triggerpostun -- %{name} < 3.11.0-1.1
+%systemd_trigger %{name}.timer
+
 %post
 if [ -f /var/lib/logrotate.status ]; then
        mv -f /var/lib/logrotate.status %{statdir}/logrotate.status
@@ -175,6 +185,13 @@ else
        chown root:root %{statdir}/logrotate.status
        chmod 640 %{statdir}/logrotate.status
 fi
+%systemd_post cronjob-logrotate.timer
+
+%preun
+%systemd_preun cronjob-logrotate.timer
+
+%postun
+%systemd_reload
 
 %files
 %defattr(644,root,root,755)
@@ -187,3 +204,5 @@ fi
 %attr(640,root,root) %ghost %{statdir}/logrotate.status
 %{_mandir}/man5/logrotate.conf.5*
 %{_mandir}/man8/logrotate.8*
+%{systemdunitdir}/cronjob-logrotate.service
+%{systemdunitdir}/cronjob-logrotate.timer
diff --git a/cronjob-logrotate.service b/cronjob-logrotate.service
new file mode 100644
index 0000000..8e3f9d3
--- /dev/null
+++ b/cronjob-logrotate.service
@@ -0,0 +1,7 @@
+[Unit]
+Description=logrotate cron job
+
+[Service]
+ExecStart=/usr/lib/logrotate
+
+# vi: ft=systemd
diff --git a/cronjob-logrotate.timer b/cronjob-logrotate.timer
new file mode 100644
index 0000000..bfb2194
--- /dev/null
+++ b/cronjob-logrotate.timer
@@ -0,0 +1,11 @@
+[Unit]
+Description=logrotate cron job
+
+[Timer]
+OnCalendar=*-*-* 05:02:00
+Persistent=true
+
+[Install]
+WantedBy=cronjobs.target
+
+# vi: ft=systemd
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/logrotate.git/commitdiff/5a7e1737dc8c5e70df3f7ecde39c2f448c94640e

_______________________________________________
pld-cvs-commit mailing list
pld-cvs-commit@lists.pld-linux.org
http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit

Reply via email to