Created
April 23, 2015 15:13
-
-
Save buckett/ae65055238d143a9d742 to your computer and use it in GitHub Desktop.
Gets a copy of Tomcat 8 and mullers it for Sakai
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash -e | |
# Quick script to download, unpack and muller tomcat. | |
# Location to download file to, also used like a cache to check if we already have it. | |
downloads=~/Downloads | |
# Filename on remote server and in local download folder | |
file=apache-tomcat-8.0.20.tar.gz | |
# Location to get download from | |
remote=http://archive.apache.org/dist/tomcat/tomcat-8/v8.0.20/bin | |
# Folder to unpack tomcat into | |
target=tomcat | |
# Filename on remote server for mysql archive | |
mysql_file=mysql-connector-java-5.1.31.tar.gz | |
# MySQL location | |
mysql_remote=http://cdn.mysql.com//Downloads/Connector-J/ | |
if [ -f ${downloads}/${file} ]; then | |
echo "File already downloaded." | |
else | |
echo "Downloading file..." | |
mkdir -p ${downloads} | |
# wget --progress=dot -P ${downloads} ${remote}/${file} | |
(cd ${downloads} && curl -O "${remote}/${file}" ) | |
fi | |
if [ -f ${downloads}/${mysql_file} ]; then | |
echo "MySQL already downloaded." | |
else | |
echo "Downloading MySQL JAR..." | |
(cd ${downloads} && curl -O "${mysql_remote}/${mysql_file}") | |
fi | |
if [ -d ${target} ] ; then | |
echo "Tomcat folder already exists." | |
exit 1 | |
fi | |
mkdir ${target} | |
pushd ${target} | |
echo "Unpacking tomcat archive." | |
tar zxf ${downloads}/${file} --strip-components 1 | |
echo "Removing existing webapps" | |
rm -r webapps/* | |
echo "Setting up custom classloaders" | |
sed -i.orig '/^common.loader=/s@$@,${catalina.base}/common/classes/,${catalina.base}/common/lib/*.jar@ | |
/^shared.loader=/s@$@${catalina.base}/shared/classes/,${catalina.base}/shared/lib/*.jar@ | |
/^server.loader=/s@$@${catalina.base}/server/classes/,${catalina.base}/server/lib/*.jar@' conf/catalina.properties | |
echo "Stop scanning all JARs" | |
sed -i.orig 's/^org.apache.catalina.startup.ContextConfig.jarsToSkip=.*/org.apache.catalina.startup.ContextConfig.jarsToSkip=*.jar/' conf/catalina.properties | |
echo "Increasing Tomcat startup threads" | |
sed -i.orig 's/<Host name="localhost"/<Host name="localhost" startStopThreads="4"/' conf/server.xml | |
mkdir -p shared/classes shared/lib common/classes common/lib server/classes server/lib | |
echo "Copying in MySQL JAR" | |
# This assumes the mysql JAR is inside a folder and has a .jar extension | |
(cd shared/lib; tar -x -f ${downloads}/${mysql_file} --include=mysql*.jar --strip-components 1 ) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment