11#! /bin/bash
22
33export HOME=/home/ubuntu
4- export CATALINA_HOME=/opt/tomcat
4+ export BUILD_DIR=$HOME /build-folder
5+ export BUILD_FILES=$HOME /wise-build-files
6+ export CATALINA_HOME=/var/lib/tomcat9
57
8+ sudo -u ubuntu -g ubuntu touch $HOME /deploy.log
69exec & >> $HOME /deploy.log
710
811echo " Starting deployment at $( date) "
912
10- echo " Stopping Tomcat"
11- sudo service tomcat stop
13+ if [[ $DEPLOYMENT_GROUP_NAME == " qa-deployment-group" ]]; then
14+ env=" qa"
15+ elif [[ $DEPLOYMENT_GROUP_NAME == " prod-deployment-group" ]]; then
16+ env=" prod"
17+ fi
1218
13- echo " Deleting $CATALINA_HOME /webapps/ROOT.war"
14- rm -rf $CATALINA_HOME /webapps/ROOT.war
19+ echo " Updating Ubuntu"
20+ apt-get update
21+ apt-get upgrade -y
1522
16- echo " Deleting $CATALINA_HOME /webapps/ROOT"
17- rm -rf $CATALINA_HOME /webapps/ROOT
23+ echo " Setting server timezone to Los Angeles"
24+ timedatectl set-timezone America/Los_Angeles
25+
26+ echo " Installing AWS CLI"
27+ apt-get install awscli -y
28+
29+ echo " Downloading files from wise-build-files S3 bucket"
30+ sudo -u ubuntu -g ubuntu mkdir $HOME /wise-build-files
31+ sudo -u ubuntu -g ubuntu aws s3 sync s3://wise-build-files $HOME /wise-build-files
32+ chmod u+x $HOME /wise-build-files/sync.sh
33+
34+ echo " Installing Java 11"
35+ apt-get install openjdk-11-jdk-headless -y
36+
37+ echo " Create tomcat group"
38+ groupadd -g 1001 tomcat
39+
40+ echo " Create tomcat user"
41+ useradd -u 1001 -g tomcat -c " Apache Tomcat" -d / -s /usr/sbin/nologin tomcat
42+
43+ echo " Adding ubuntu user to tomcat group"
44+ usermod -a -G tomcat ubuntu
45+
46+ echo " Installing Tomcat 9"
47+ apt-get install tomcat9 -y
48+
49+ echo " Removing Tomcat ROOT folder"
50+ rm -rf $CATALINA_HOME /webapps/ROOT
51+
52+ echo " Add https to Tomcat server.xml"
53+ sed ' s/<Connector port="8080"/<Connector port="8080" scheme="https"/' -i $CATALINA_HOME /conf/server.xml
54+
55+ echo " Downlading setenv.sh Tomcat file"
56+ cp $BUILD_FILES /setenv.sh /usr/share/tomcat9/bin/setenv.sh
57+
58+ echo " Restarting Tomcat"
59+ service tomcat9 restart
60+
61+ echo " Creating Tomcat curriculum and studentuploads folders"
62+ sudo -u ubuntu -g tomcat mkdir $CATALINA_HOME /webapps/curriculum
63+ sudo -u ubuntu -g tomcat mkdir $CATALINA_HOME /webapps/studentuploads
64+
65+ echo " Installing Nginx"
66+ apt-get install nginx -y
67+
68+ echo " Adding Nginx www-data user to tomcat group"
69+ usermod -a -G tomcat www-data
70+
71+ echo " Downloading WISE Nginx config file"
72+ rm -f /etc/nginx/sites-enabled/*
73+ cp $BUILD_FILES /$env /wise.conf /etc/nginx/sites-enabled/wise.conf
74+ systemctl restart nginx
75+
76+ echo " Creating additional folders for WISE"
77+ mkdir -p $HOME /build-folder/WEB-INF/classes
78+ sudo -u ubuntu -g ubuntu mkdir $HOME /backup
79+ sudo -u ubuntu -g tomcat mkdir $HOME /googleTokens
80+
81+ echo " Downloading application.properties file"
82+ cp $BUILD_FILES /$env /application.properties $BUILD_DIR /WEB-INF/classes/application.properties
83+
84+ echo " Installing network drive package"
85+ apt-get install nfs-common -y
86+
87+ echo " Mounting network drive folders"
88+ cp $BUILD_FILES /$env /fstab /etc/fstab
89+ mount -a
90+
91+ echo " Downloading .vimrc file"
92+ sudo -u ubuntu -g ubuntu cp $BUILD_FILES /.vimrc $HOME /.vimrc
93+
94+ echo " Downloading text to append to .bashrc"
95+ cat $BUILD_FILES /append-to-bashrc.txt >> ~ /.bashrc
96+ source ~ /.bashrc
97+
98+ echo " Installing tree"
99+ apt-get install tree -y
100+
101+ echo " Downloading message of the day script to display notes"
102+ cp $BUILD_FILES /99-notes /etc/update-motd.d/99-notes
103+ chmod 755 /etc/update-motd.d/99-notes
0 commit comments