installAll.sh 3.88 KB
#!/bin/bash
set -eo pipefail

################### Ask for sudo password #####################
read -s -p "Enter sudo password: " SUDOPASS
echo $SUDOPASS | sudo -S -p "" echo "Thanks!"

export ROOT=`pwd`


#################### Morfeusz ####################
wget -O - http://sgjp.pl/apt/sgjp.gpg.key
echo $SUDOPASS | sudo -S -p "" apt-key add -
echo $SUDOPASS | sudo -S -p "" add-apt-repository 'deb http://sgjp.pl/apt/ubuntu trusty main'
echo $SUDOPASS | sudo -S -p "" apt-get update
echo $SUDOPASS | sudo -S -p "" apt-get -y install morfeusz2 python-morfeusz2 libjmorfeusz-java

#################### various prerequisites ####################
./download_models.sh

cd ../core/MultiserviceDemo/RequestLogging/
./install.sh $SUDOPASS
cd $ROOT

cd ../third_party
# This was old Morfeusz
# ./install_morfeusz.sh $SUDOPASS
./install_pantera.sh $SUDOPASS
./install_spejd.sh $SUDOPASS
./install_maca.sh $SUDOPASS
# This was old Concraft
#./install_concraft.sh $SUDOPASS
./install_wcrft_deps.sh $SUDOPASS
./install_wmbt_deps.sh $SUDOPASS
./install_thrift.sh $SUDOPASS
cd ../scripts
./generateThrift.sh
cd "$ROOT"

echo $SUDOPASS | sudo -S -p "" apt-get -y install maven ghc cabal-install python-pip python-lxml
echo $SUDOPASS | sudo -S -p "" apt-get -y install libots-dev



#################### Java #####################

# install TermoPL jars
mvn install:install-file -Dfile=../third_party/jmorfeusz.jar -DgroupId=termextractor -DartifactId=jmorfeusz  -Dversion=1.0 -Dpackaging=jar -DgeneratePom=true
mvn install:install-file -Dfile=../third_party/images.jar -DgroupId=termextractor -DartifactId=images  -Dversion=1.0 -Dpackaging=jar -DgeneratePom=true
mvn install:install-file -Dfile=../third_party/QuitAboutPreferencesHandler.jar -DgroupId=termextractor -DartifactId=QuitAboutPreferencesHandler  -Dversion=1.0 -Dpackaging=jar -DgeneratePom=true

for projectDir in ../core/JavaUtils ../core/DictionaryCompilator ../core/RequestManager ../core/WebService ../subservices/java/*
do
  echo
  echo $"==== building $projectDir ===="
  echo
  cd $projectDir
  mvn package install -DskipTests=true
  cd "$ROOT"
done

echo $SUDOPASS | sudo -S -p "" apt-get -y install tomcat7
cd ../core/WebService/target
echo $SUDOPASS | sudo -S -p "" cp WebService-*.war /var/lib/tomcat7/webapps
cd "$ROOT"


#################### C++ #####################
for cppDir in ../core/CppUtils ../subservices/cpp/*
do
  echo
  echo $"==== building $cppDir ===="
  echo
  cd $cppDir
  ./configure
  make
  echo $SUDOPASS | sudo -S -p "" make install
  echo $SUDOPASS | sudo -S -p "" ldconfig
  cd "$ROOT"
done


#################### Python #####################
for pyDir in ../core/PyUtils ../subservices/python/*
do
  echo
  echo $"==== building $pyDir ===="
  echo
  cd $pyDir
  echo $SUDOPASS | sudo -S -p "" python setup.py install
  cd "$ROOT"
done

# MultiserviceDemo
echo $SUDOPASS | sudo -S -p "" apt-get -y install apache2 libapache2-mod-fastcgi python-pip libapache2-mod-php5
echo $SUDOPASS | sudo -S -p "" pip install django flup jsonpickle thrift django-ipware python-geoip python-geoip-geolite2
echo $SUDOPASS | sudo -S -p "" mkdir /var/www/fcgi
echo $SUDOPASS | sudo -S -p "" touch /var/www/fcgi/multiservice.fcgi
echo $SUDOPASS | sudo -S -p "" chown -R www-data:www-data /var/www/fcgi
echo $SUDOPASS | sudo -S -p "" chmod 750 /var/www/fcgi/multiservice.fcgi

echo $SUDOPASS | sudo -S -p "" cp -r ../core/MultiserviceDemo/MultiserviceDemo/static /var/www/
echo $SUDOPASS | sudo -S -p "" chown -R www-data:www-data /var/www/static
echo $SUDOPASS | sudo -S -p "" cp ../core/MultiserviceDemo/conf/000-default.conf /etc/apache2/sites-available/

echo $SUDOPASS | sudo -S -p "" a2enmod rewrite
echo $SUDOPASS | sudo -S -p "" service apache2 restart


#################### Haskell #####################
for haskellDir in ../subservices/haskell/*
do
  echo
  echo $"==== building $haskellDir ===="
  echo
  cd $haskellDir
  echo $SUDOPASS | sudo -S -p "" cabal install --global
  cd "$ROOT"
done