#!/bin/bash
#start services manually in advance
#mongod &
#sudo service mysql start
applicationfolder="/home/jhonnymertz/workspace/adaptive-caching-framework/evaluation/Applications/"
#configs=("NO" "DEV" "AP")
configs=("NO")
workloadfolder="/home/jhonnymertz/workspace/adaptive-caching-framework/evaluation/JMeter/"
jmeter="/home/jhonnymertz/dev/apache-jmeter-3.0/bin/jmeter.sh"
## take care of the order
#applications=("CloudStore" "shopizer/sm-shop" "spring-petclinic")
#databases=("CloudStore" "shopizer/sm-shop" "spring-petclinic")
#workloads=("cloudscale-sustain.jmx" "Shopizer.jmx" "petclinic_test_plan.jmx")
applications=("spring-petclinic")
databases=("petclinic")
workloads=("petclinic_test_plan.jmx")
numberOfExecutions=10
for (( i=1; i <= $numberOfExecutions; ++i ))
do
## now loop through the above array
for config in "${configs[@]}"
do
for iapp in "${!applications[@]}"
do
echo "Processing ${applications[$iapp]}-$config..."
## setup database (clean, create, populate)
##todo run database config as a script
echo "drop database ${databases[$iapp]}" | mysql -u "root" "-proot"
echo "create database ${databases[$iapp]}" | mysql -u "root" "-proot"
## enter the folder
echo "Entering into $applicationfolder$config/${applications[$iapp]}..."
cd "$applicationfolder$config/${applications[$iapp]}"
## compile and run web server
mvn clean install tomcat7:run-war -DskipTests & mvnpid=$!
## wait for maven to compile and tomcat to run
sleep 1m
## run jmeter
sh $jmeter -n -t $workloadfolder${workloads[$iapp]}
## copy jmeter results
mv /home/jhonnymertz/Desktop/report.csv /home/jhonnymertz/Desktop/${applications[$iapp]}-$config-$i.csv
## kill maven after all
kill -9 $mvnpid
done
done
done