50 lines
1 KiB
Text
50 lines
1 KiB
Text
|
#!/bin/bash
|
||
|
|
||
|
# Create workdir
|
||
|
XP_FOLDER=`mktemp -d -p . xp2-XXXXXXXXXXXXXXXX`
|
||
|
XP_ID=`echo $XP_FOLDER|cut -c 3-`
|
||
|
cd $XP_FOLDER
|
||
|
COUNT=$1
|
||
|
INTERVAL=$2
|
||
|
SIZE=$3
|
||
|
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 \
|
||
|
xp2-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 \
|
||
|
xp2-client $COUNT $INTERVAL $SIZE &
|
||
|
|
||
|
sleep $ALLOWED_TIME
|
||
|
|
||
|
# Kill
|
||
|
docker kill "$XP_ID-client" || true
|
||
|
docker kill "$XP_ID-server" || true
|