forked from TrueCloudLab/rclone
testserver: Make Test{FTP,SFTP,Webdav}Rclone run the current rclone
Before this change the tests were run against the previous stable rclone/rclone docker image. This unfortunately masked errors in the integration test server. This change uses the currently installed rclone to run "rclone serve ftp" etc. This is installed out of the current code by the integration test server so will make a better test.
This commit is contained in:
parent
f980f230c5
commit
45e8bea8d0
4 changed files with 61 additions and 24 deletions
|
@ -5,19 +5,18 @@ set -e
|
||||||
NAME=rclone-serve-ftp
|
NAME=rclone-serve-ftp
|
||||||
USER=rclone
|
USER=rclone
|
||||||
PASS=FuddleIdlingJell5
|
PASS=FuddleIdlingJell5
|
||||||
|
IP=127.0.0.1
|
||||||
. $(dirname "$0")/docker.bash
|
PORT=28622
|
||||||
|
|
||||||
start() {
|
start() {
|
||||||
docker run --rm -d --name $NAME \
|
run rclone serve ftp --user $USER --pass $PASS --addr ${IP}:${PORT} ${DATADIR}
|
||||||
rclone/rclone \
|
|
||||||
serve ftp --user $USER --pass $PASS --addr :21 /data
|
|
||||||
|
|
||||||
echo type=ftp
|
echo type=ftp
|
||||||
echo host=$(docker_ip)
|
echo host=${IP}
|
||||||
|
echo port=$PORT
|
||||||
echo user=$USER
|
echo user=$USER
|
||||||
echo pass=$(rclone obscure $PASS)
|
echo pass=$(rclone obscure $PASS)
|
||||||
echo _connect=$(docker_ip):21
|
echo _connect=${IP}:${PORT}
|
||||||
}
|
}
|
||||||
|
|
||||||
. $(dirname "$0")/run.bash
|
. $(dirname "$0")/rclone-serve.bash
|
||||||
|
|
|
@ -5,19 +5,18 @@ set -e
|
||||||
NAME=rclone-serve-sftp
|
NAME=rclone-serve-sftp
|
||||||
USER=rclone
|
USER=rclone
|
||||||
PASS=CranesBallotDorsey5
|
PASS=CranesBallotDorsey5
|
||||||
|
IP=127.0.0.1
|
||||||
. $(dirname "$0")/docker.bash
|
PORT=28621
|
||||||
|
|
||||||
start() {
|
start() {
|
||||||
docker run --rm -d --name $NAME \
|
run rclone serve sftp --user $USER --pass $PASS --addr ${IP}:${PORT} ${DATADIR}
|
||||||
rclone/rclone \
|
|
||||||
serve sftp --user $USER --pass $PASS --addr :22 /data
|
|
||||||
|
|
||||||
echo type=sftp
|
echo type=sftp
|
||||||
echo host=$(docker_ip)
|
echo host=${IP}
|
||||||
|
echo port=$PORT
|
||||||
echo user=$USER
|
echo user=$USER
|
||||||
echo pass=$(rclone obscure $PASS)
|
echo pass=$(rclone obscure $PASS)
|
||||||
echo _connect=$(docker_ip):22
|
echo _connect=${IP}:${PORT}
|
||||||
}
|
}
|
||||||
|
|
||||||
. $(dirname "$0")/run.bash
|
. $(dirname "$0")/rclone-serve.bash
|
||||||
|
|
|
@ -5,19 +5,17 @@ set -e
|
||||||
NAME=rclone-serve-webdav
|
NAME=rclone-serve-webdav
|
||||||
USER=rclone
|
USER=rclone
|
||||||
PASS=PagansSwimExpiry9
|
PASS=PagansSwimExpiry9
|
||||||
|
IP=127.0.0.1
|
||||||
. $(dirname "$0")/docker.bash
|
PORT=28620
|
||||||
|
|
||||||
start() {
|
start() {
|
||||||
docker run --rm -d --name $NAME \
|
run rclone serve webdav --user $USER --pass $PASS --addr ${IP}:${PORT} ${DATADIR}
|
||||||
rclone/rclone \
|
|
||||||
serve webdav --user $USER --pass $PASS --addr :80 /data
|
|
||||||
|
|
||||||
echo type=webdav
|
echo type=webdav
|
||||||
echo url=http://$(docker_ip)/
|
echo url=http://${IP}:${PORT}/
|
||||||
echo user=$USER
|
echo user=$USER
|
||||||
echo pass=$(rclone obscure $PASS)
|
echo pass=$(rclone obscure $PASS)
|
||||||
echo _connect=$(docker_ip):80
|
echo _connect=${IP}:$PORT
|
||||||
}
|
}
|
||||||
|
|
||||||
. $(dirname "$0")/run.bash
|
. $(dirname "$0")/rclone-serve.bash
|
||||||
|
|
41
fstest/testserver/init.d/rclone-serve.bash
Normal file
41
fstest/testserver/init.d/rclone-serve.bash
Normal file
|
@ -0,0 +1,41 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# start an "rclone serve" server
|
||||||
|
|
||||||
|
PIDFILE=/tmp/${NAME}.pid
|
||||||
|
DATADIR=/tmp/${NAME}-data
|
||||||
|
|
||||||
|
stop() {
|
||||||
|
if status ; then
|
||||||
|
pid=$(cat ${PIDFILE})
|
||||||
|
kill $pid
|
||||||
|
rm ${PIDFILE}
|
||||||
|
echo "$NAME stopped"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
status() {
|
||||||
|
if [ -e ${PIDFILE} ]; then
|
||||||
|
pid=$(cat ${PIDFILE})
|
||||||
|
if kill -0 &>1 > /dev/null $pid; then
|
||||||
|
# echo "$NAME running"
|
||||||
|
return 0
|
||||||
|
else
|
||||||
|
rm ${PIDFILE}
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
# echo "$NAME not running"
|
||||||
|
return 1
|
||||||
|
}
|
||||||
|
|
||||||
|
run() {
|
||||||
|
if ! status ; then
|
||||||
|
mkdir -p ${DATADIR}
|
||||||
|
nohup "$@" >>/tmp/${NAME}.log 2>&1 </dev/null &
|
||||||
|
pid=$!
|
||||||
|
echo $pid > ${PIDFILE}
|
||||||
|
disown $pid
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
. $(dirname "$0")/run.bash
|
Loading…
Add table
Reference in a new issue