Project

General

Profile

1
#!/bin/bash
2
#This script will install openjdk-7 and tomcat7.
3
#It also updates the alternatives for java, javac, keytool and javaws to openjdk-7.
4
#It also modifies the /etc/tomcat7/catalina.properties to allow DataONE idenifiers.
5
#It modifies the workers.properties file for apache-tomcat connector.
6
#The user running the script should have the sudo permission.
7

    
8
NEW_JDK_HOME=/usr/lib/jvm/java-7-openjdk-amd64
9
NEW_CATALINA_PROPERTIES=/etc/tomcat7/catalina.properties
10
JK_CONF=/etc/apache2/mods-enabled/jk.conf
11
NEW_TOMCAT_HOME=/usr/share/tomcat7
12
NEW_TOMCAT_BASE=/var/lib/tomcat7
13

    
14
echo "install openjdk-7-jdk"
15
sudo apt-get install openjdk-7-jdk
16
sleep 3
17
echo "configure java, java, keytool and javaws"
18
sudo update-alternatives --set java ${NEW_JDK_HOME}/jre/bin/java
19
sudo update-alternatives --set javac ${NEW_JDK_HOME}/bin/javac
20
sudo update-alternatives --set keytool ${NEW_JDK_HOME}/jre/bin/keytool
21
sudo update-alternatives --set javaws ${NEW_JDK_HOME}/jre/bin/javaws
22

    
23
echo "install tomcat7"
24
sudo apt-get install tomcat7
25
sudo sed -i.bak '$ a\org.apache.tomcat.util.buf.UDecoder.ALLOW_ENCODED_SLASH=true' ${NEW_CATALINA_PROPERTIES} 
26
sudo sed -i '$ a\org.apache.catalina.connector.CoyoteAdapter.ALLOW_BACKSLASH=true' ${NEW_CATALINA_PROPERTIES}
27

    
28
echo "read the location of the workers.properties file from the jk_conf"
29
while read f1 f2 
30
do
31
        if [ "$f1" = "JkWorkersFile" ]; then
32
		JK_WORKER_PATH="$f2"	
33
	fi
34
done < ${JK_CONF}
35
echo "the jk workers.properties location is $JK_WORKER_PATH"
36

    
37
echo "update the tomcat home and java home in workers.properties file"
38
sudo sed -i.bak --regexp-extended "s/(workers\.tomcat_home=).*/\1\/usr\/share\/tomcat7/;
39
                s/(workers\.java_home=).*/\1\/usr\/lib\/jvm\/java-7-openjdk-amd64/;"\
40
                $JKWORKERPATH
(5-5/8)