Hi Lucio,
Instead of setup cron, we can use the cherrypy plugins to execute a task
on every time.
Please, take a look at
http://docs.cherrypy.org/en/latest/pkg/cherrypy.process.html
Seems BackgroundTask will fit our needs here:
http://docs.cherrypy.org/en/latest/pkg/cherrypy.process.html#cherrypy.pro...
We can register the plugin on server start up and let it run on every
time you need to check the logs.
On 02/25/2016 05:47 PM, Lucio Correia wrote:
Signed-off-by: Lucio Correia <luciojhc(a)linux.vnet.ibm.com>
---
Makefile.am | 10 ++++++++++
contrib/DEBIAN/control.in | 1 +
contrib/Makefile.am | 1 +
contrib/cleanlogs.sh | 4 ++++
contrib/wok.spec.fedora.in | 2 ++
contrib/wok.spec.suse.in | 2 ++
6 files changed, 20 insertions(+)
create mode 100644 contrib/cleanlogs.sh
diff --git a/Makefile.am b/Makefile.am
index 86d83a0..584c695 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -95,6 +95,10 @@ install-deb: install
$(DESTDIR)/etc/init/wokd.conf; \
fi
$(MKDIR_P) $(DESTDIR)/$(localstatedir)/lib/wok/
+ $(MKDIR_P) $(DESTDIR)/$(localstatedir)/lib/wok/logs
+ $(MKDIR_P) $(DESTDIR)/etc/cron.daily
+ cp -R $(top_srcdir)/contrib/cleanlogs.sh \
+ $(DESTDIR)/etc/cron.daily/wok-cleanlogs
$(MKDIR_P) $(DESTDIR)/usr/lib/firewalld/services
cp -R $(top_srcdir)/src/firewalld.xml \
$(DESTDIR)/usr/lib/firewalld/services/wokd.xml
@@ -146,6 +150,10 @@ install-data-local:
$(INSTALL_DATA) src/firewalld.xml $(DESTDIR)/usr/lib/firewalld/services/wokd.xml; \
fi; \
mkdir -p $(DESTDIR)/$(localstatedir)/lib/wok/
+ $(MKDIR_P) $(DESTDIR)/$(localstatedir)/lib/wok/logs
+ $(MKDIR_P) $(DESTDIR)/etc/cron.daily
+ $(INSTALL_DATA) contrib/cleanlogs.sh $(DESTDIR)/etc/cron.daily/wok-cleanlogs
+ chmod +x $(DESTDIR)/etc/cron.daily/wok-cleanlogs
mkdir -p $(DESTDIR)/$(localstatedir)/log/wok/
touch $(DESTDIR)/$(localstatedir)/log/wok/wok-access.log
touch $(DESTDIR)/$(localstatedir)/log/wok/wok-error.log
@@ -166,9 +174,11 @@ uninstall-local:
if test -d /usr/lib/firewalld/services/; then \
$(RM) $(DESTDIR)/usr/lib/firewalld/services/wokd.xml; \
fi; \
+ $(RM) -rf $(DESTDIR)/$(localstatedir)/lib/wok/logs
$(RM) -rf $(DESTDIR)/$(localstatedir)/lib/wok
$(RM) -rf $(DESTDIR)/$(localstatedir)/log/wok
$(RM) -rf $(DESTDIR)/etc/wok
+ $(RM) $(DESTDIR)/etc/cron.daily/wok-cleanlogs
$(RM) $(DESTDIR)/etc/nginx/conf.d/wok.conf
$(RM) $(DESTDIR)/etc/logrotate.d/wokd.in
$(RM) $(DESTDIR)/etc/logrotate.d/wokd
diff --git a/contrib/DEBIAN/control.in b/contrib/DEBIAN/control.in
index e585080..bf0e751 100644
--- a/contrib/DEBIAN/control.in
+++ b/contrib/DEBIAN/control.in
@@ -15,6 +15,7 @@ Depends: python-cherrypy3 (>= 3.2.0),
python-psutil (>= 0.6.0),
fonts-font-awesome,
logrotate,
+ cron,
texlive-fonts-extra
Build-Depends: xsltproc,
gettext,
diff --git a/contrib/Makefile.am b/contrib/Makefile.am
index a82ba30..fdc8d2c 100644
--- a/contrib/Makefile.am
+++ b/contrib/Makefile.am
@@ -30,6 +30,7 @@ EXTRA_DIST = \
wokd-upstart.conf.fedora \
make-deb.sh.in \
wokd.logrotate.in \
+ cleanlogs.sh \
$(NULL)
make-deb.sh: make-deb.sh.in $(top_builddir)/config.status
diff --git a/contrib/cleanlogs.sh b/contrib/cleanlogs.sh
new file mode 100644
index 0000000..b916d67
--- /dev/null
+++ b/contrib/cleanlogs.sh
@@ -0,0 +1,4 @@
+#!/bin/sh
+
+DIR=/var/lib/wok/logs
+[ -d "$DIR" ] && find "$DIR" -mtime +1 -type f -delete
diff --git a/contrib/wok.spec.fedora.in b/contrib/wok.spec.fedora.in
index 7715e7f..40b247f 100644
--- a/contrib/wok.spec.fedora.in
+++ b/contrib/wok.spec.fedora.in
@@ -20,6 +20,7 @@ Requires: python-psutil >= 0.6.0
Requires: fontawesome-fonts
Requires: open-sans-fonts
Requires: logrotate
+Requires: crontabs
BuildRequires: gettext-devel
BuildRequires: libxslt
BuildRequires: openssl
@@ -114,6 +115,7 @@ rm -rf $RPM_BUILD_ROOT
%{_prefix}/share/locale/*/LC_MESSAGES/wok.mo
%{_datadir}/wok/ui/
%{_datadir}/wok
+%{_sysconfdir}/cron.daily/wok-cleanlogs
%{_sysconfdir}/nginx/conf.d/wok.conf.in
%{_sysconfdir}/wok/wok.conf
%{_sysconfdir}/wok/
diff --git a/contrib/wok.spec.suse.in b/contrib/wok.spec.suse.in
index 3d39483..edbf7a0 100644
--- a/contrib/wok.spec.suse.in
+++ b/contrib/wok.spec.suse.in
@@ -21,6 +21,7 @@ Requires: python-psutil >= 0.6.0
Requires: fontawesome-fonts
Requires: google-opensans-fonts
Requires: logrotate
+Requires: cronie
BuildRequires: gettext-tools
BuildRequires: libxslt-tools
BuildRequires: openssl
@@ -91,6 +92,7 @@ rm -rf $RPM_BUILD_ROOT
%{_prefix}/share/locale/*/LC_MESSAGES/wok.mo
%{_datadir}/wok/ui/
%{_datadir}/wok
+%{_sysconfdir}/cron.daily/wok-cleanlogs
%{_sysconfdir}/wok/wok.conf
%{_sysconfdir}/wok/
%{_sysconfdir}/nginx/conf.d/wok.conf.in