experiments.sh

58 lines | 1.734 kB Blame History Raw Download
#!/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