add systemd service for htcacheclean

This commit is contained in:
Joe Orton 2013-01-08 13:19:12 +00:00
parent f935ab813b
commit 55e18b467e
4 changed files with 49 additions and 11 deletions

10
htcacheclean.service Normal file
View File

@ -0,0 +1,10 @@
[Unit]
Description=Disk Cache Cleaning Daemon for Apache HTTP Server
After=httpd.service
[Service]
Type=forking
User=apache
PIDFile=/run/httpd/htcacheclean/pid
EnvironmentFile=/etc/sysconfig/htcacheclean
ExecStart=/usr/sbin/htcacheclean -P /run/httpd/htcacheclean/pid -d $INTERVAL -p $CACHE_ROOT -l $LIMIT $OPTIONS

16
htcacheclean.sysconf Normal file
View File

@ -0,0 +1,16 @@
#
# Configuration options for systemd service, htcacheclean.service.
# See htcacheclean(8) for more information on available options.
#
# Interval between cache clean runs, in minutes
INTERVAL=15
# Default cache root.
CACHE_ROOT=/var/cache/httpd/proxy
# Cache size limit in bytes (K=Kbytes, M=Mbytes)
LIMIT=100M
# Any other options...
OPTIONS=

View File

@ -14,7 +14,7 @@
Summary: Apache HTTP Server Summary: Apache HTTP Server
Name: httpd Name: httpd
Version: 2.4.3 Version: 2.4.3
Release: 14%{?dist} Release: 15%{?dist}
URL: http://httpd.apache.org/ URL: http://httpd.apache.org/
Source0: http://www.apache.org/dist/httpd/httpd-%{version}.tar.bz2 Source0: http://www.apache.org/dist/httpd/httpd-%{version}.tar.bz2
Source1: index.html Source1: index.html
@ -42,6 +42,8 @@ Source23: manual.conf
Source24: 00-systemd.conf Source24: 00-systemd.conf
# Documentation # Documentation
Source30: README.confd Source30: README.confd
Source40: htcacheclean.service
Source41: htcacheclean.sysconf
# build/scripts patches # build/scripts patches
Patch1: httpd-2.4.1-apctl.patch Patch1: httpd-2.4.1-apctl.patch
Patch2: httpd-2.4.3-apxs.patch Patch2: httpd-2.4.3-apxs.patch
@ -252,8 +254,10 @@ make DESTDIR=$RPM_BUILD_ROOT install
# Install systemd service files # Install systemd service files
mkdir -p $RPM_BUILD_ROOT%{_unitdir} mkdir -p $RPM_BUILD_ROOT%{_unitdir}
install -p -m 644 $RPM_SOURCE_DIR/httpd.service \ for s in httpd htcacheclean; do
$RPM_BUILD_ROOT%{_unitdir}/httpd.service install -p -m 644 $RPM_SOURCE_DIR/${s}.service \
$RPM_BUILD_ROOT%{_unitdir}/${s}.service
done
# install conf file/directory # install conf file/directory
mkdir $RPM_BUILD_ROOT%{_sysconfdir}/httpd/conf.d \ mkdir $RPM_BUILD_ROOT%{_sysconfdir}/httpd/conf.d \
@ -286,16 +290,19 @@ install -m 644 -p $RPM_SOURCE_DIR/httpd.conf \
$RPM_BUILD_ROOT%{_sysconfdir}/httpd/conf/httpd.conf $RPM_BUILD_ROOT%{_sysconfdir}/httpd/conf/httpd.conf
mkdir $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig mkdir $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig
install -m 644 -p $RPM_SOURCE_DIR/httpd.sysconf \ for s in httpd htcacheclean; do
$RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/httpd install -m 644 -p $RPM_SOURCE_DIR/${s}.sysconf \
$RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/${s}
done
# tmpfiles.d configuration # tmpfiles.d configuration
mkdir -p $RPM_BUILD_ROOT%{_prefix}/lib/tmpfiles.d mkdir -p $RPM_BUILD_ROOT%{_prefix}/lib/tmpfiles.d
install -m 644 -p $RPM_SOURCE_DIR/httpd.tmpfiles \ install -m 644 -p $RPM_SOURCE_DIR/httpd.tmpfiles \
$RPM_BUILD_ROOT%{_prefix}/lib/tmpfiles.d/httpd.conf $RPM_BUILD_ROOT%{_prefix}/lib/tmpfiles.d/httpd.conf
# for holding mod_dav lock database # Other directories
mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/lib/dav mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/lib/dav \
$RPM_BUILD_ROOT/run/httpd/htcacheclean
# Create cache directory # Create cache directory
mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/cache/httpd \ mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/cache/httpd \
@ -403,10 +410,10 @@ rm -rf $RPM_BUILD_ROOT/etc/httpd/conf/{original,extra}
-s /sbin/nologin -r -d %{contentdir} apache 2> /dev/null || : -s /sbin/nologin -r -d %{contentdir} apache 2> /dev/null || :
%post %post
%systemd_post httpd.service %systemd_post httpd.service htcacheclean.service
%preun %preun
%systemd_preun httpd.service %systemd_preun httpd.service htcacheclean.service
%postun %postun
%systemd_postun %systemd_postun
@ -424,7 +431,7 @@ rm -rf $RPM_BUILD_ROOT/etc/httpd/conf/{original,extra}
%posttrans %posttrans
test -f /etc/sysconfig/httpd-disable-posttrans || \ test -f /etc/sysconfig/httpd-disable-posttrans || \
/bin/systemctl try-restart httpd.service >/dev/null 2>&1 || : /bin/systemctl try-restart httpd.service htcacheclean.service >/dev/null 2>&1 || :
%define sslcert %{_sysconfdir}/pki/tls/certs/localhost.crt %define sslcert %{_sysconfdir}/pki/tls/certs/localhost.crt
%define sslkey %{_sysconfdir}/pki/tls/private/localhost.key %define sslkey %{_sysconfdir}/pki/tls/private/localhost.key
@ -493,7 +500,7 @@ rm -rf $RPM_BUILD_ROOT
%exclude %{_sysconfdir}/httpd/conf.modules.d/00-proxyhtml.conf %exclude %{_sysconfdir}/httpd/conf.modules.d/00-proxyhtml.conf
%exclude %{_sysconfdir}/httpd/conf.modules.d/01-ldap.conf %exclude %{_sysconfdir}/httpd/conf.modules.d/01-ldap.conf
%config(noreplace) %{_sysconfdir}/sysconfig/httpd %config(noreplace) %{_sysconfdir}/sysconfig/ht*
%{_prefix}/lib/tmpfiles.d/httpd.conf %{_prefix}/lib/tmpfiles.d/httpd.conf
%dir %{_libexecdir}/initscripts/legacy-actions/httpd %dir %{_libexecdir}/initscripts/legacy-actions/httpd
@ -529,6 +536,7 @@ rm -rf $RPM_BUILD_ROOT
%dir %{docroot}/html %dir %{docroot}/html
%attr(0710,root,apache) %dir /run/httpd %attr(0710,root,apache) %dir /run/httpd
%attr(0700,apache,apache) %dir /run/httpd/htcacheclean
%attr(0700,root,root) %dir %{_localstatedir}/log/httpd %attr(0700,root,root) %dir %{_localstatedir}/log/httpd
%attr(0700,apache,apache) %dir %{_localstatedir}/lib/dav %attr(0700,apache,apache) %dir %{_localstatedir}/lib/dav
%attr(0700,apache,apache) %dir %{_localstatedir}/cache/httpd %attr(0700,apache,apache) %dir %{_localstatedir}/cache/httpd
@ -580,6 +588,9 @@ rm -rf $RPM_BUILD_ROOT
%{_sysconfdir}/rpm/macros.httpd %{_sysconfdir}/rpm/macros.httpd
%changelog %changelog
* Tue Jan 8 2013 Joe Orton <jorton@redhat.com> - 2.4.3-15
- add systemd service for htcacheclean
* Tue Nov 13 2012 Joe Orton <jorton@redhat.com> - 2.4.3-14 * Tue Nov 13 2012 Joe Orton <jorton@redhat.com> - 2.4.3-14
- drop patch for r1344712 - drop patch for r1344712

View File

@ -1 +1,2 @@
d /run/httpd 710 root apache d /run/httpd 710 root apache
d /run/httpd/htcacheclean 700 apache apache