[arch-commits] Commit in tomcat7/trunk (3 files)
Guillaume Alaux
guillaume at nymeria.archlinux.org
Sat Feb 15 16:35:55 UTC 2014
Date: Saturday, February 15, 2014 @ 17:35:54
Author: guillaume
Revision: 206021
Use new layout (see svn history of tomcat{6,8})
Modified:
tomcat7/trunk/PKGBUILD
tomcat7/trunk/systemd_tomcat7.service
tomcat7/trunk/tomcat7.install
-------------------------+
PKGBUILD | 170 ++++++++++++++--------------------------------
systemd_tomcat7.service | 7 -
tomcat7.install | 43 ++++-------
3 files changed, 74 insertions(+), 146 deletions(-)
Modified: PKGBUILD
===================================================================
--- PKGBUILD 2014-02-15 16:35:21 UTC (rev 206020)
+++ PKGBUILD 2014-02-15 16:35:54 UTC (rev 206021)
@@ -1,137 +1,75 @@
# Maintainer: Guillaume ALAUX <guillaume at archlinux.org>
-pkgbase=tomcat7
-pkgname=('java-servlet3.0-tomcat' 'java-jsp2.2-tomcat' 'tomcat7')
+pkgname=tomcat7
pkgver=7.0.50
-pkgrel=1
+pkgrel=2
+pkgdesc='Open source implementation of the Java Servlet 3.0 and JavaServer Pages 2.2 technologies'
arch=('any')
url='http://tomcat.apache.org/'
license=('APACHE')
-makedepends=('java-environment' 'apache-ant>=1.8' 'java-commons-daemon' 'eclipse-ecj')
-source=(http://archive.apache.org/dist/tomcat/tomcat-7/v${pkgver}/src/apache-tomcat-${pkgver}-src.tar.gz
- http://archive.apache.org/dist/tomcat/tomcat-7/v${pkgver}/bin/apache-tomcat-${pkgver}.tar.gz
- systemd_tomcat7.service
- systemd_tmpfiles.d_tomcat7.conf
- tomcat7.install)
+depends=('java-runtime>=7' 'java-jsvc' 'java-commons-daemon' 'eclipse-ecj')
+optdepends=('tomcat-native: to allow optimal performance in production environments')
+backup=(etc/${pkgname}/catalina.policy
+ etc/${pkgname}/catalina.properties
+ etc/${pkgname}/context.xml
+ etc/${pkgname}/logging.properties
+ etc/${pkgname}/server.xml
+ etc/${pkgname}/tomcat-users.xml
+ etc/${pkgname}/web.xml)
+install=${pkgname}.install
+source=(http://archive.apache.org/dist/tomcat/tomcat-7/v${pkgver}/bin/apache-tomcat-${pkgver}.tar.gz
+ systemd_${pkgname}.service
+ systemd_tmpfiles.d_${pkgname}.conf
+ ${pkgname}.install)
-sha256sums=('a668e1356b4fa3032ecf2b65bc9136cd2eed98547719b363df66eb27b5e20fd0'
- '7be7b2d9e6626c81f2aa3d39a7e5b0e52e025d773cd29c4a0cf9e71b0d4c11e9'
- '6b3d9711319165c331b827cba40cb788c0d1ea60fd181a56b8da4ca41e2d2930'
+sha256sums=('7be7b2d9e6626c81f2aa3d39a7e5b0e52e025d773cd29c4a0cf9e71b0d4c11e9'
+ '7f2931a77b3da0dfce4886251c5bdfc186bf1ad60f6c01c3cafe0bab75034fb7'
'4bfeb2f4462547bf15cb2b72db545c0531c70f8640fa79344d520ceea6812a93'
- '4db469bcbcfb043c63ce3db0412997552861ea0f9c09d8825808570ed75aa27b')
+ '13df331dad3441f027c8b5964ba5bf420df3dc8faf0f96e071db981e8ea322f0')
-_servletver=3.0
-_jspver=2.2
+_gid_log=19
+_gid_tomcat=71
+_uid_tomcat=71
-build() {
- cd "${srcdir}/apache-tomcat-${pkgver}-src"
+package() {
+ cd "${srcdir}/apache-tomcat-${pkgver}"
- . /etc/profile.d/apache-ant.sh
-
- ant clean deploy \
- -Dbase.path=${srcdir}/DOWN_LIBS \
- -Dcommons-daemon.jar=/usr/share/java/commons-daemon.jar \
- -Djdt.jar=/usr/share/java/eclipse-ecj.jar \
- -Dno.build.dbcp=true \
- -Djava.7.home=${JAVA_HOME}
-}
-
-#TODO add test "ant test"
-
-package_java-servlet3.0-tomcat() {
- pkgdesc='Servlet 3.0 java library implementation by Apache Tomcat'
- depends=('java-environment>=5')
-
- cd "${srcdir}/apache-tomcat-${pkgver}-src/output/build/lib"
-
- install -dm755 ${pkgdir}/usr/share/java/servlet${_servletver}-tomcat
- install -m644 servlet-api.jar \
- ${pkgdir}/usr/share/java/servlet${_servletver}-tomcat/servlet-api-${_servletver}.jar
- ln -s servlet${_servletver}-tomcat/servlet-api-${_servletver}.jar \
- ${pkgdir}/usr/share/java/servlet-api.jar
-}
-
-package_java-jsp2.2-tomcat() {
- pkgdesc='JSP 2.2 java library implementation by Apache Tomcat'
- depends=('java-environment>=5')
-
- cd "${srcdir}/apache-tomcat-${pkgver}-src/output/build/lib"
-
- install -dm755 ${pkgdir}/usr/share/java/jsp${_jspver}-tomcat
- for j in el-api jsp-api; do
- install -m644 ${j}.jar \
- ${pkgdir}/usr/share/java/jsp${_jspver}-tomcat/${j}-${_jspver}.jar
- ln -s jsp${_jspver}-tomcat/${j}-${_jspver}.jar ${pkgdir}/usr/share/java/${j}.jar
- done
-}
-
-package_tomcat7() {
- pkgdesc='Servlet-3.0/JSP-2.2 Container'
- depends=('java-runtime>=6' 'java-jsvc' 'eclipse-ecj'
- "java-servlet3.0-tomcat=${pkgver}" "java-jsp2.2-tomcat=${pkgver}")
- optdepends=('tomcat-native: to allow optimal performance in production environments')
- backup=(etc/tomcat7/catalina.policy
- etc/tomcat7/catalina.properties
- etc/tomcat7/context.xml
- etc/tomcat7/logging.properties
- etc/tomcat7/server.xml
- etc/tomcat7/tomcat-users.xml
- etc/tomcat7/web.xml)
- install=tomcat7.install
-
- cd "${srcdir}/apache-tomcat-${pkgver}-src/output/build"
-
# Tomcat general files
- install -dm755 ${pkgdir}/usr/share/{,java/}${pkgname}
+ install -dm755 "${pkgdir}"/usr/share/{,java/}${pkgname}
+ cp -r bin "${pkgdir}"/usr/share/${pkgname}
# commons-daemon and tomcat-natives are packaged on their own
- rm bin/{*.bat,commons-daemon*,tomcat-native.tar.gz}
- cp -r bin ${pkgdir}/usr/share/${pkgname}
+ rm "${pkgdir}"/usr/share/${pkgname}/bin/{*.bat,commons-daemon*,tomcat-native.tar.gz}
+ ln -s /usr/share/java/commons-daemon.jar "${pkgdir}"/usr/share/${pkgname}/bin/commons-daemon.jar
+ install -m644 lib/* "${pkgdir}"/usr/share/java/${pkgname}
# eclipse-ecj is packaged on its own
- rm lib/eclipse-ecj.jar
- install -m644 lib/* ${pkgdir}/usr/share/java/${pkgname}
- ln -s ../eclipse-ecj.jar ${pkgdir}/usr/share/java/${pkgname}/eclipse-ecj.jar
+ rm "${pkgdir}"/usr/share/java/${pkgname}/ecj-*.jar
+ ln -s ../eclipse-ecj.jar "${pkgdir}"/usr/share/java/${pkgname}/ecj.jar
- # Provided by previous packages
- rm ${pkgdir}/usr/share/java/${pkgname}/servlet-api.jar
- ln -s /usr/share/java/servlet${_servletver}-tomcat/servlet-api-${_servletver}.jar \
- ${pkgdir}/usr/share/java/${pkgname}/servlet-api.jar
+ ln -s /usr/share/java/${pkgname} "${pkgdir}"/usr/share/${pkgname}/lib
- for j in el-api jsp-api; do
- rm ${pkgdir}/usr/share/java/${pkgname}/${j}.jar
- ln -s /usr/share/java/jsp${_jspver}-tomcat/${j}-${_jspver}.jar \
- ${pkgdir}/usr/share/java/${pkgname}/${j}.jar
- done
+ # We log through systemd but this would still be required for stock Tomcat logging
+ install -dm775 -o ${_uid_tomcat} -g ${_gid_log} "${pkgdir}"/var/log/${pkgname}
+ ln -s /var/log/${pkgname} "${pkgdir}"/usr/share/${pkgname}/logs
+ touch "${pkgdir}"/var/log/${pkgname}/catalina.{out,err}
+ chgrp ${_gid_log} "${pkgdir}"/var/log/${pkgname}/catalina.{out,err}
- install -m644 "${srcdir}/apache-tomcat-${pkgver}/lib/tomcat-dbcp.jar" \
- ${pkgdir}/usr/share/java/${pkgname}/tomcat-dbcp-${pkgver}.jar
- ln -s tomcat-dbcp-${pkgver}.jar \
- ${pkgdir}/usr/share/java/${pkgname}/tomcat-dbcp.jar
+ install -dm775 "${pkgdir}"/etc/${pkgname}
+ install -g ${_gid_tomcat} -m640 conf/* "${pkgdir}"/etc/${pkgname}
+ install -d -g ${_gid_tomcat} -m775 "${pkgdir}"/etc/${pkgname}/Catalina
+ ln -s /etc/${pkgname} "${pkgdir}"/usr/share/${pkgname}/conf
- ln -s /usr/share/java/${pkgname} ${pkgdir}/usr/share/${pkgname}/lib
+ install -dm775 "${pkgdir}"/var/lib/${pkgname}
+ cp -r webapps "${pkgdir}"/var/lib/${pkgname}
+ chown -R ${_uid_tomcat}:${_gid_tomcat} "${pkgdir}"/var/lib/${pkgname}
+ ln -s /var/lib/${pkgname}/webapps "${pkgdir}"/usr/share/${pkgname}/webapps
- # 71=tomcat7 / 19=log
- install -dm775 -o 71 -g 19 ${pkgdir}/var/log/${pkgname}
- ln -s /var/log/${pkgname} ${pkgdir}/usr/share/${pkgname}/logs
- touch ${pkgdir}/var/log/${pkgname}/catalina.{out,err}
- chgrp 19 ${pkgdir}/var/log/${pkgname}/catalina.{out,err}
+ install -dm1777 "${pkgdir}"/var/tmp
+ install -dm775 -o ${_uid_tomcat} -g ${_gid_tomcat} "${pkgdir}"/var/tmp/${pkgname}/{temp,work}
+ ln -s /var/tmp/${pkgname}/temp "${pkgdir}"/usr/share/${pkgname}/temp
+ ln -s /var/tmp/${pkgname}/work "${pkgdir}"/usr/share/${pkgname}/work
- install -dm775 ${pkgdir}/etc/${pkgname}
- install -g 71 -m640 conf/* ${pkgdir}/etc/${pkgname}
- install -d -g 71 -m775 ${pkgdir}/etc/${pkgname}/Catalina
- ln -s /etc/${pkgname} ${pkgdir}/usr/share/${pkgname}/conf
-
- install -dm775 ${pkgdir}/var/lib/${pkgname}
- cp -r webapps ${pkgdir}/var/lib/${pkgname}
- chown -R 71:71 ${pkgdir}/var/lib/${pkgname}
- ln -s /var/lib/${pkgname}/webapps ${pkgdir}/usr/share/${pkgname}/webapps
-
- install -dm1777 ${pkgdir}/var/tmp
- install -dm775 -o 71 -g 71 ${pkgdir}/var/tmp/${pkgname}/{temp,work}
- ln -s /var/tmp/${pkgname}/temp ${pkgdir}/usr/share/${pkgname}/temp
- ln -s /var/tmp/${pkgname}/work ${pkgdir}/usr/share/${pkgname}/work
-
- install -Dm644 ${srcdir}/systemd_tomcat7.service \
- ${pkgdir}/usr/lib/systemd/system/${pkgname}.service
- install -Dm644 ${srcdir}/systemd_tmpfiles.d_tomcat7.conf \
- ${pkgdir}/usr/lib/tmpfiles.d/${pkgname}.conf
+ install -Dm644 "${srcdir}"/systemd_${pkgname}.service \
+ "${pkgdir}"/usr/lib/systemd/system/${pkgname}.service
+ install -Dm644 "${srcdir}"/systemd_tmpfiles.d_${pkgname}.conf \
+ "${pkgdir}"/usr/lib/tmpfiles.d/${pkgname}.conf
}
Modified: systemd_tomcat7.service
===================================================================
--- systemd_tomcat7.service 2014-02-15 16:35:21 UTC (rev 206020)
+++ systemd_tomcat7.service 2014-02-15 16:35:54 UTC (rev 206021)
@@ -1,6 +1,6 @@
[Unit]
Description=Tomcat 7 servlet container
-After=syslog.target network.target
+After=network.target
[Service]
Type=forking
@@ -19,8 +19,8 @@
-user tomcat7 \
-java-home ${TOMCAT_JAVA_HOME} \
-pidfile /var/run/tomcat7.pid \
- -errfile /var/log/tomcat7/catalina.err \
- -outfile /var/log/tomcat7/catalina.out \
+ -errfile SYSLOG \
+ -outfile SYSLOG \
$CATALINA_OPTS \
org.apache.catalina.startup.Bootstrap
@@ -31,4 +31,3 @@
[Install]
WantedBy=multi-user.target
-
Modified: tomcat7.install
===================================================================
--- tomcat7.install 2014-02-15 16:35:21 UTC (rev 206020)
+++ tomcat7.install 2014-02-15 16:35:54 UTC (rev 206021)
@@ -1,28 +1,22 @@
+_pkgname='tomcat7'
+_gid_tomcat_name='tomcat7'
+_gid_tomcat=71
+_uid_tomcat_name='tomcat7'
+_uid_tomcat=71
+
post_install() {
- getent group tomcat7 >/dev/null 2>&1 || groupadd -g 71 tomcat7
- getent passwd tomcat7 >/dev/null 2>&1 || useradd -u 71 -g tomcat7 -d /usr/share/tomcat7 -s /bin/false tomcat7
+ if ! getent group ${_gid_tomcat_name} >/dev/null 2>&1; then
+ groupadd -g ${_gid_tomcat} ${_gid_tomcat_name}
+ fi
+ if ! getent passwd ${_uid_tomcat_name} >/dev/null 2>&1; then
+ useradd -u ${_uid_tomcat} -g ${_gid_tomcat_name} -d /usr/share/${_pkgname} -s /bin/false ${_uid_tomcat_name}
+ fi
if [ -f lib/modules/$(uname -r)/kernel/security/capability.ko ]; then
echo 'It appears that your current kernel has linux security'
echo 'capabilities built as a module. Tomcat requires this'
echo ' functionality to operate.'
- echo ''
- echo ' To activate the module, please load it now (modprobe capability).'
- echo ' Also, you should add it to your MODULES array in rc.conf, so'
- echo ' it will be activated automatically at boot-up.'
fi
-
- # Some tomcat7 files were owned by 'tomcat:tomcat', let's fix this
- chown root:tomcat7 /etc/tomcat7 /etc/tomcat7/*
- chown -R tomcat7:tomcat7 /etc/tomcat7/Catalina
- chown -R tomcat7:tomcat7 /var/lib/tomcat7
- chown -R tomcat7:tomcat7 /var/tmp/tomcat7
- chown tomcat7:log /var/log/tomcat7
- find /var/log/tomcat7 -user tomcat -exec chown tomcat7 {} \;
- find /var/log/tomcat7 -group tomcat -exec chgrp tomcat7 {} \;
-
- # Fix some previously erroneous mods
- chmod 775 /var/tmp/tomcat7 /var/tmp/tomcat7/temp /var/tmp/tomcat7/work
}
post_upgrade() {
@@ -30,15 +24,12 @@
}
pre_remove() {
- if getent passwd tomcat7 > /dev/null 2>&1; then
- userdel tomcat7
+ if getent passwd ${_uid_tomcat_name} > /dev/null 2>&1; then
+ userdel ${_uid_tomcat_name}
fi
- if getent group tomcat7 > /dev/null 2>&1; then
- groupdel tomcat7
+ if getent group ${_gid_tomcat_name} > /dev/null 2>&1; then
+ groupdel ${_gid_tomcat_name}
fi
- echo 'Please consider removing the following directories:'
- echo ' /var/lib/tomcat7'
- echo ' /var/tmp/tomcat7'
- echo ' /var/log/tomcat7'
+ echo "To fully clean Tomcat's file, consider removing directories /var/{lib,tmp,log}/${_pkgname}"
}
More information about the arch-commits
mailing list