tor_multipath_voip/scripts/xp-instance-runner
2019-03-28 16:42:02 +01:00

50 lines
1.1 KiB
Bash
Executable file

#!/bin/bash
# Create workdir
XP_NAME=$1
XP_FOLDER=`mktemp -d -p . ${XP_NAME}-XXXXXXXXXXXXXXXX`
XP_ID=`echo $XP_FOLDER|cut -c 3-`
cd $XP_FOLDER
COUNT=$2
INTERVAL=$3
SIZE=$4
ALLOWED_BOOTSTRAP=190
ALLOWED_TIME=`expr $(expr ${COUNT} * ${INTERVAL}) / 1000 + ${ALLOWED_BOOTSTRAP}`
echo "Will run for ${ALLOWED_TIME} (count=$1, interval=$2)"
# Create folders
docker run \
--rm \
-ti \
-v `pwd`:/mnt \
ubuntu \
bash -c "cd /mnt; mkdir -p ./{shared,log,res}; chown -R 1000 ./{shared,log,res}"
# Run server
docker run \
--privileged \
--rm \
--name "$XP_ID-server" \
-v `pwd`/shared:/home/donar/shared \
-v `pwd`/log:/home/donar/log \
registry.gitlab.inria.fr/qdufour/donar \
${XP_NAME}-server &
sleep 10
# Run client
docker run \
--privileged \
--rm \
--name "$XP_ID-client" \
-v `pwd`/res:/home/donar/res \
-v `pwd`/shared:/home/donar/shared \
-v `pwd`/log:/home/donar/log \
registry.gitlab.inria.fr/qdufour/donar \
${XP_NAME}-client $COUNT $INTERVAL $SIZE &
sleep $ALLOWED_TIME
# Kill
docker kill "$XP_ID-client" || true
docker kill "$XP_ID-server" || true