Bug 16138: Restart plack when rotating logfiles
authorTomas Cohen Arazi <tomascohen@unc.edu.ar>
Wed, 23 Mar 2016 18:53:01 +0000 (15:53 -0300)
committerBrendan A Gallagher <brendan@bywatersolutions.com>
Fri, 1 Apr 2016 18:47:01 +0000 (18:47 +0000)
On log rotation Starman/Plack keeps failing (Auth.pm related problems) due to
permission issues:

Could not compile /usr/share/koha/opac/cgi-bin/opac/opac-search.pl: Can't locate Authen/CAS/Client/Response/Failure.pm
:   ./Authen/CAS/Client/Response/Failure.pm: Permission denied at /usr/share/perl/5.20/base.pm line 97.
        ...propagated at /usr/share/perl/5.20/base.pm line 106.
BEGIN failed--compilation aborted at /usr/share/perl5/Authen/CAS/Client/Response.pm line 68.
Compilation failed in require at /usr/share/perl5/Authen/CAS/Client.pm line 8.
BEGIN failed--compilation aborted at /usr/share/perl5/Authen/CAS/Client.pm line 8.
Compilation failed in require at /usr/share/koha/lib/C4/Auth_with_cas.pm line 25.
BEGIN failed--compilation aborted at /usr/share/koha/lib/C4/Auth_with_cas.pm line 25.
Compilation failed in require at /usr/share/koha/lib/C4/Auth.pm line 63.
BEGIN failed--compilation aborted at /usr/share/koha/lib/C4/Auth.pm line 90.
Compilation failed in require at /usr/share/koha/opac/cgi-bin/opac/opac-search.pl line 34.
BEGIN failed--compilation aborted at /usr/share/koha/opac/cgi-bin/opac/opac-search.pl line 34.

As we do with zebra daemons, starman should be restarted as it doesn't handle log file rotation
gracefully[1].

I'm not sure how to reproduce it on a dev environment.

[1] https://github.com/miyagawa/Starman/issues/55

Signed-off-by: Mirko Tietgen <mirko@abunchofthings.net>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
debian/koha-common.logrotate

index 0299b62..5b6663a 100644 (file)
     sharedscripts
     prerotate
         /usr/sbin/koha-stop-zebra $(koha-list --enabled) > /dev/null
+        /usr/sbin/koha-plack --stop --quiet $(koha-list --enabled --plack) > /dev/null
     endscript
     postrotate
         /etc/init.d/apache2 reload > /dev/null
+        /usr/sbin/koha-plack --start --quiet $(koha-list --enabled --plack) > /dev/null
         /usr/sbin/koha-start-zebra $(koha-list --enabled) > /dev/null
     endscript
 }