diff --git a/tests/automatic/CMakeLists.txt b/tests/automatic/CMakeLists.txt
index 91516687693d29ef8a8f3b564dd76d4866464d8a..bf5f7ca3bc632f771b358b8e0fa5bfce39b44914 100644
--- a/tests/automatic/CMakeLists.txt
+++ b/tests/automatic/CMakeLists.txt
@@ -1,6 +1,10 @@
 CMAKE_MINIMUM_REQUIRED(VERSION 3.7) # needed for fixtures
 find_package(Threads)
 
+add_subdirectory(common_scripts)
+
+
+
 add_subdirectory(common/cpp)
 add_subdirectory(system_io)
 
diff --git a/tests/automatic/authorizer/check_authorize/CMakeLists.txt b/tests/automatic/authorizer/check_authorize/CMakeLists.txt
index d0f3cdacc755d427043efb4694a86644f65bc6f4..8cfe77776b571ad3ab80491a5ef9d850be42746c 100644
--- a/tests/automatic/authorizer/check_authorize/CMakeLists.txt
+++ b/tests/automatic/authorizer/check_authorize/CMakeLists.txt
@@ -20,6 +20,5 @@ configure_file(${CMAKE_SOURCE_DIR}/tests/automatic/settings/auth_secret_admin.ke
 configure_file(beamtime-metadata-11111111.json beamtime-metadata-11111111.json COPYONLY)
 configure_file(beamtime-metadata-11111112.json beamtime-metadata-11111112.json COPYONLY)
 
-configure_file(${CMAKE_CURRENT_SOURCE_DIR}/settings.json.in settings.json @ONLY)
 add_script_test("${TARGET_NAME}-authorize" "$<TARGET_PROPERTY:${TARGET_NAME},EXENAME>" nomem
         )
diff --git a/tests/automatic/authorizer/check_authorize/check_linux.sh b/tests/automatic/authorizer/check_authorize/check_linux.sh
index 26864b195cdb1664c240ac87d39f5d1113daa190..ea92dadbc998cf9e6a37b71534d35d24287cf7c1 100644
--- a/tests/automatic/authorizer/check_authorize/check_linux.sh
+++ b/tests/automatic/authorizer/check_authorize/check_linux.sh
@@ -6,62 +6,56 @@ trap Cleanup EXIT
 
 Cleanup() {
 	echo cleanup
-	kill -9 $authorizeid
-	sleep 1
 }
 
-$@ -config settings.json &
-sleep 1
-authorizeid=`echo $!`
-
-mkdir -p asap3/petra3/gpfs/p00/2019/comissioning/c20180508-000-COM20181
-mkdir -p asap3/petra3/gpfs/p00/2019/data/11000015
-mkdir -p beamline/p07/current
-mkdir -p beamline/p08/current
-cp beamtime-metadata-11111111.json beamline/p07/current/
-cp beamtime-metadata-11111112.json beamline/p08/current/
+mkdir -p /tmp/asapo/asap3/petra3/gpfs/p00/2019/comissioning/c20180508-000-COM20181
+mkdir -p /tmp/asapo/asap3/petra3/gpfs/p00/2019/data/11000015
+mkdir -p /tmp/asapo/beamline/p07/current
+mkdir -p /tmp/asapo/beamline/p08/current
+cp beamtime-metadata-11111111.json /tmp/asapo/beamline/p07/current/
+cp beamtime-metadata-11111112.json /tmp/asapo/beamline/p08/current/
 
 
 #tokens
 AdminToken=$ASAPO_CREATE_TOKEN
 echo admin $AdminToken
 
-curl -v --silent -H "Authorization: Bearer $AdminToken" --data '{"Subject": {"beamtimeId":"12345678"},"DaysValid":123,"AccessType":["read"]}' 127.0.0.1:5007/admin/issue --stderr -  | tee /dev/stderr | grep "bt_12345678"
-curl -v --silent -H "Authorization: Bearer blabla" --data '{"Subject": {"beamtimeId":"12345678"},"DaysValid":123,"AccessType":["read"]}' 127.0.0.1:5007/admin/issue --stderr -  | tee /dev/stderr | grep "token does not match"
+curl -v --silent -H "Authorization: Bearer $AdminToken" --data '{"Subject": {"beamtimeId":"12345678"},"DaysValid":123,"AccessType":["read"]}' 127.0.0.1:8400/asapo-authorizer/admin/issue --stderr -  | tee /dev/stderr | grep "bt_12345678"
+curl -v --silent -H "Authorization: Bearer blabla" --data '{"Subject": {"beamtimeId":"12345678"},"DaysValid":123,"AccessType":["read"]}' 127.0.0.1:8400/asapo-authorizer/admin/issue --stderr -  | tee /dev/stderr | grep "token does not match"
 
-curl -v --silent --data '{"SourceCredentials":"processed%c20180508-000-COM20181%%detector%","OriginHost":"127.0.0.1:5555"}' 127.0.0.1:5007/authorize --stderr -  | tee /dev/stderr  | grep c20180508-000-COM20181
-curl -v --silent --data '{"SourceCredentials":"processed%c20180508-000-COM20181%%detector%","OriginHost":"127.0.0.1:5555"}' 127.0.0.1:5007/authorize --stderr -  | tee /dev/stderr  | grep p00
-curl -v --silent --data '{"SourceCredentials":"processed%c20180508-000-COM20181%%detector%","OriginHost":"127.0.0.1:5555"}' 127.0.0.1:5007/authorize --stderr -  | tee /dev/stderr  | grep detector
+curl -v --silent --data '{"SourceCredentials":"processed%c20180508-000-COM20181%%detector%","OriginHost":"127.0.0.1:5555"}' 127.0.0.1:8400/asapo-authorizer/authorize --stderr -  | tee /dev/stderr  | grep c20180508-000-COM20181
+curl -v --silent --data '{"SourceCredentials":"processed%c20180508-000-COM20181%%detector%","OriginHost":"127.0.0.1:5555"}' 127.0.0.1:8400/asapo-authorizer/authorize --stderr -  | tee /dev/stderr  | grep p00
+curl -v --silent --data '{"SourceCredentials":"processed%c20180508-000-COM20181%%detector%","OriginHost":"127.0.0.1:5555"}' 127.0.0.1:8400/asapo-authorizer/authorize --stderr -  | tee /dev/stderr  | grep detector
 
 token=$C20180508_000_COM20181_TOKEN
 
-curl -v --silent --data "{\"SourceCredentials\":\"processed%c20180508-000-COM20181%%detector%$token\",\"OriginHost\":\"bla\"}" 127.0.0.1:5007/authorize --stderr -  | tee /dev/stderr  | grep detector
-curl -v --silent --data "{\"SourceCredentials\":\"processed%c20180508-000-COM20181%auto%detector%$token\",\"OriginHost\":\"bla\"}" 127.0.0.1:5007/authorize --stderr -  | tee /dev/stderr  | grep p00
-curl -v --silent --data '{"SourceCredentials":"processed%c20180508-000-COM20181%%detector%bla","OriginHost":"bla"}' 127.0.0.1:5007/authorize --stderr -  | tee /dev/stderr  | grep 401
+curl -v --silent --data "{\"SourceCredentials\":\"processed%c20180508-000-COM20181%%detector%$token\",\"OriginHost\":\"bla\"}" 127.0.0.1:8400/asapo-authorizer/authorize --stderr -  | tee /dev/stderr  | grep detector
+curl -v --silent --data "{\"SourceCredentials\":\"processed%c20180508-000-COM20181%auto%detector%$token\",\"OriginHost\":\"bla\"}" 127.0.0.1:8400/asapo-authorizer/authorize --stderr -  | tee /dev/stderr  | grep p00
+curl -v --silent --data '{"SourceCredentials":"processed%c20180508-000-COM20181%%detector%bla","OriginHost":"bla"}' 127.0.0.1:8400/asapo-authorizer/authorize --stderr -  | tee /dev/stderr  | grep 401
 
 token=$BT11000015_TOKEN
 #beamtine not online
-curl -v --silent --data "{\"SourceCredentials\":\"raw%11000015%%detector%$token\",\"OriginHost\":\"bla\"}" 127.0.0.1:5007/authorize --stderr -  | tee /dev/stderr  | grep 401
+curl -v --silent --data "{\"SourceCredentials\":\"raw%11000015%%detector%$token\",\"OriginHost\":\"bla\"}" 127.0.0.1:8400/asapo-authorizer/authorize --stderr -  | tee /dev/stderr  | grep 401
 
 token=$BT11000016_TOKEN
-curl -v --silent --data "{\"SourceCredentials\":\"raw%11000016%%detector%${token}\",\"OriginHost\":\"bla\"}" 127.0.0.1:5007/authorize --stderr -  | tee /dev/stderr  | grep 401
+curl -v --silent --data "{\"SourceCredentials\":\"raw%11000016%%detector%${token}\",\"OriginHost\":\"bla\"}" 127.0.0.1:8400/asapo-authorizer/authorize --stderr -  | tee /dev/stderr  | grep 401
 
 
 token=$BLP07_TOKEN
 
-curl -v --silent --data "{\"SourceCredentials\":\"processed%auto%p07%detector%$token\",\"OriginHost\":\"bla\"}" 127.0.0.1:5007/authorize --stderr -  | tee /dev/stderr  | grep 11111111
-curl -v --silent --data "{\"SourceCredentials\":\"raw%auto%p07%detector%$token\",\"OriginHost\":\"127.0.0.1:5007\"}" 127.0.0.1:5007/authorize --stderr -  | tee /dev/stderr  | grep 11111111
-curl -v --silent --data "{\"SourceCredentials\":\"raw%auto%p07%detector%$token\",\"OriginHost\":\"127.0.0.1:5007\"}" 127.0.0.1:5007/authorize --stderr -  | tee /dev/stderr  | grep p07
-curl -v --silent --data "{\"SourceCredentials\":\"raw%auto%p07%detector%$token\",\"OriginHost\":\"127.0.0.1:5007\"}" 127.0.0.1:5007/authorize --stderr -  | tee /dev/stderr  | grep /asap3/petra3/gpfs/p07/2020/data/11111111
+curl -v --silent --data "{\"SourceCredentials\":\"processed%auto%p07%detector%$token\",\"OriginHost\":\"bla\"}" 127.0.0.1:8400/asapo-authorizer/authorize --stderr -  | tee /dev/stderr  | grep 11111111
+curl -v --silent --data "{\"SourceCredentials\":\"raw%auto%p07%detector%$token\",\"OriginHost\":\"127.0.0.1:8400/asapo-authorizer\"}" 127.0.0.1:8400/asapo-authorizer/authorize --stderr -  | tee /dev/stderr  | grep 11111111
+curl -v --silent --data "{\"SourceCredentials\":\"raw%auto%p07%detector%$token\",\"OriginHost\":\"127.0.0.1:8400/asapo-authorizer\"}" 127.0.0.1:8400/asapo-authorizer/authorize --stderr -  | tee /dev/stderr  | grep p07
+curl -v --silent --data "{\"SourceCredentials\":\"raw%auto%p07%detector%$token\",\"OriginHost\":\"127.0.0.1:8400/asapo-authorizer\"}" 127.0.0.1:8400/asapo-authorizer/authorize --stderr -  | tee /dev/stderr  | grep /asap3/petra3/gpfs/p07/2020/data/11111111
 
 #wrong data in metafile
-curl -v --silent --data "{\"SourceCredentials\":\"processed%auto%p08%detector%$token\",\"OriginHost\":\"bla\"}" 127.0.0.1:5007/authorize --stderr -  | tee /dev/stderr  | grep "cannot set meta fields"
+curl -v --silent --data "{\"SourceCredentials\":\"processed%auto%p08%detector%$token\",\"OriginHost\":\"bla\"}" 127.0.0.1:8400/asapo-authorizer/authorize --stderr -  | tee /dev/stderr  | grep "cannot set meta fields"
 
 #read access
-curl -v --silent --data "{\"SourceCredentials\":\"processed%auto%p07%detector%$token\",\"OriginHost\":\"bla\"}" 127.0.0.1:5007/authorize --stderr - | tee /dev/stderr  | grep read
+curl -v --silent --data "{\"SourceCredentials\":\"processed%auto%p07%detector%$token\",\"OriginHost\":\"bla\"}" 127.0.0.1:8400/asapo-authorizer/authorize --stderr - | tee /dev/stderr  | grep read
 
 #write access
 token=$BLP07_W_TOKEN
-curl -v --silent --data "{\"SourceCredentials\":\"processed%auto%p07%detector%$token\",\"OriginHost\":\"bla\"}" 127.0.0.1:5007/authorize --stderr -  | tee /dev/stderr  | grep write
+curl -v --silent --data "{\"SourceCredentials\":\"processed%auto%p07%detector%$token\",\"OriginHost\":\"bla\"}" 127.0.0.1:8400/asapo-authorizer/authorize --stderr -  | tee /dev/stderr  | grep write
 
-rm -rf asap3 beamline
\ No newline at end of file
+rm -rf /tmp/asapo/asap3 /tmp/asapo/beamline
\ No newline at end of file
diff --git a/tests/automatic/authorizer/check_authorize/check_windows.bat b/tests/automatic/authorizer/check_authorize/check_windows.bat
index 9de7767141f3b1ea8301b2a5d60254bbd394de3e..45cf774957e426b1ef7c62a4efd1c994fdc5b139 100644
--- a/tests/automatic/authorizer/check_authorize/check_windows.bat
+++ b/tests/automatic/authorizer/check_authorize/check_windows.bat
@@ -5,9 +5,9 @@ start /B "" "%full_name%" -config settings.json
 
 ping 192.0.2.1 -n 1 -w 1000 > nul
 
-mkdir asap3\petra3\gpfs\p00\2019\comissioning\c20180508-000-COM20181
-mkdir beamline\p07\current
-copy beamtime-metadata-11111111.json beamline\p07\current\ /y
+mkdir C:\tmp\asapo\asap3\petra3\gpfs\p00\2019\comissioning\c20180508-000-COM20181
+mkdir C:\tmp\asapo\beamline\p07\current
+copy beamtime-metadata-11111111.json C:\tmp\asapo\beamline\p07\current\ /y
 
 C:\Curl\curl.exe -v  --silent --data "{\"SourceCredentials\":\"processed%%c20180508-000-COM20181%%%%detector%%\",\"OriginHost\":\"127.0.0.1:5555\"}" 127.0.0.1:5007/authorize --stderr - | findstr c20180508-000-COM20181  || goto :error
 C:\Curl\curl.exe -v  --silent --data "{\"SourceCredentials\":\"processed%%c20180508-000-COM20181%%auto%%detector%%\",\"OriginHost\":\"127.0.0.1:5555\"}" 127.0.0.1:5007/authorize --stderr - | findstr p00  || goto :error
@@ -26,5 +26,5 @@ exit /b 1
 
 :clean
 Taskkill /IM "%short_name%" /F
-rmdir /S /Q asap3
-rmdir /S /Q beamline
+rmdir /S /Q C:\tmp\asapo\asap3
+rmdir /S /Q C:\tmp\asapo\beamline
diff --git a/tests/automatic/authorizer/check_authorize/settings.json.in b/tests/automatic/authorizer/check_authorize/settings.json.in
deleted file mode 100644
index 13950ebea0ad1bc146c59042780fd02020c150a5..0000000000000000000000000000000000000000
--- a/tests/automatic/authorizer/check_authorize/settings.json.in
+++ /dev/null
@@ -1,14 +0,0 @@
-{
-  "Port": 5007,
-  "LogLevel":"debug",
-  "RootBeamtimesFolder":"@ASAP3_FOLDER@",
-  "CurrentBeamlinesFolder":"@CURRENT_BEAMLINES_FOLDER@",
-  "UserSecretFile":"auth_secret.key",
-  "AdminSecretFile":"auth_secret_admin.key",
-  "Ldap":
-    {
-        "Uri" : "ldap://localhost:389",
-        "BaseDn" : "ou=rgy,o=desy,c=de",
-        "FilterTemplate" : "(cn=a3__BEAMLINE__-hosts)"
-    }
-}
\ No newline at end of file
diff --git a/tests/automatic/broker/check_monitoring/CMakeLists.txt b/tests/automatic/broker/check_monitoring/CMakeLists.txt
index 05ef150fd611bf31a545ec5573b3acfc4c0db959..db03b79a772502fb2243d103a27293c3b9407cdb 100644
--- a/tests/automatic/broker/check_monitoring/CMakeLists.txt
+++ b/tests/automatic/broker/check_monitoring/CMakeLists.txt
@@ -3,8 +3,4 @@ set(TARGET_NAME asapo-broker)
 ################################
 # Testing
 ################################
-prepare_asapo()
-configure_file(${CMAKE_SOURCE_DIR}/tests/automatic/settings/broker_settings.json settings.json COPYONLY)
-
-add_script_test("${TARGET_NAME}-monitoring" "$<TARGET_PROPERTY:${TARGET_NAME},EXENAME> $<TARGET_PROPERTY:asapo,EXENAME>" nomem
-        )
+add_script_test("${TARGET_NAME}-monitoring" "" nomem)
diff --git a/tests/automatic/broker/check_monitoring/check_linux.sh b/tests/automatic/broker/check_monitoring/check_linux.sh
index 291a0641dd36041cee3de396f08dabc89dc0fc50..734ffd75b0e3a3595a93d8f7262f71e85f2da10b 100644
--- a/tests/automatic/broker/check_monitoring/check_linux.sh
+++ b/tests/automatic/broker/check_monitoring/check_linux.sh
@@ -7,42 +7,28 @@ set -e
 trap Cleanup EXIT
 
 Cleanup() {
-    set +e
+  set +e
 	echo cleanup
 	influx -execute "drop database ${database_name}"
-	kill -9 $brokerid
-  nomad stop nginx
-  nomad run nginx_kill.nmd  && nomad stop -yes -purge nginx_kill
-  nomad stop authorizer
 }
 
 ! influx -execute "drop database ${database_name}"
 
 
-nomad run nginx.nmd
-nomad run authorizer.nmd
-sleep 1
-
-
 token=$BT_DATA_TOKEN
 
+broker=`curl --silent 127.0.0.1:8400/asapo-discovery/v0.1/asapo-broker?protocol=v0.3`
+echo found broker at $broker
 
-$1 -config settings.json &
-
-sleep 0.3
-
-brokerid=`echo $!`
-
-groupid=`curl -d '' --silent 127.0.0.1:5005/v0.2/creategroup`
+groupid=`curl -d '' --silent $broker/v0.2/creategroup`
 
 
 for i in `seq 1 50`;
 do
-    curl --silent 127.0.0.1:5005/v0.2/beamtime/data/source/stream/${groupid}/next?token=$token >/dev/null 2>&1 &
+    curl --silent $broker/v0.2/beamtime/data/source/stream/${groupid}/next?token=$token >/dev/null 2>&1 &
 done
 
-
 sleep 12
 
-influx -execute "select sum(rate) from RequestsRate" -database=${database_name} -format=json | jq .results[0].series[0].values[0][1] | tee /dev/stderr | grep 51
+influx -execute "select sum(rate) from RequestsRate" -database=${database_name} -format=json | jq .results[0].series[0].values[0][1]
 
diff --git a/tests/automatic/broker/get_last/CMakeLists.txt b/tests/automatic/broker/get_last/CMakeLists.txt
index 3b688f5db85a0a377f372e734cbd66264737768f..5b06ea8d750f76bac0d5f5a23ad49fbbc7a75e84 100644
--- a/tests/automatic/broker/get_last/CMakeLists.txt
+++ b/tests/automatic/broker/get_last/CMakeLists.txt
@@ -3,8 +3,5 @@ set(TARGET_NAME asapo-broker)
 ################################
 # Testing
 ################################
-prepare_asapo()
 
-configure_file(${CMAKE_SOURCE_DIR}/tests/automatic/settings/broker_settings.json settings.json COPYONLY)
-
-add_script_test("${TARGET_NAME}-getlast" "$<TARGET_PROPERTY:${TARGET_NAME},EXENAME> $<TARGET_PROPERTY:asapo,EXENAME>" nomem)
+add_script_test("${TARGET_NAME}-getlast" "" nomem)
diff --git a/tests/automatic/broker/get_last/check_linux.sh b/tests/automatic/broker/get_last/check_linux.sh
index c89bc54c841d1b6c32ffecb357ddb16b9e309bda..f3cfc8b57ad4ffc548d82a90a618c686e30a03d8 100644
--- a/tests/automatic/broker/get_last/check_linux.sh
+++ b/tests/automatic/broker/get_last/check_linux.sh
@@ -10,10 +10,6 @@ trap Cleanup EXIT
 Cleanup() {
 	echo cleanup
 	echo "db.dropDatabase()" | mongo ${database_name}
-	kill -9 $brokerid
-  nomad stop nginx
-  nomad run nginx_kill.nmd  && nomad stop -yes -purge nginx_kill
-  nomad stop authorizer
 }
 
 echo "db.data_${stream}.insert({"_id":2})" | mongo ${database_name}
@@ -21,33 +17,26 @@ echo "db.data_${stream}.insert({"_id":1})" | mongo ${database_name}
 
 token=$BT_DATA_TOKEN
 
-nomad run nginx.nmd
-nomad run authorizer.nmd
-sleep 1
+broker=`curl --silent 127.0.0.1:8400/asapo-discovery/v0.1/asapo-broker?protocol=v0.3`
+echo found broker at $broker
 
-$1 -config settings.json &
+groupid=`curl -d '' --silent $broker/v0.2/creategroup`
 
-sleep 0.3
-brokerid=`echo $!`
+curl -v  --silent $broker/v0.2/beamtime/data/detector/${stream}/0/last?token=$token --stderr -
 
-
-groupid=`curl -d '' --silent 127.0.0.1:5005/v0.2/creategroup`
-
-curl -v  --silent 127.0.0.1:5005/v0.2/beamtime/data/detector/${stream}/0/last?token=$token --stderr -
-
-curl -v  --silent 127.0.0.1:5005/v0.2/beamtime/data/detector/${stream}/0/last?token=$token --stderr - | grep '"_id":2'
-curl -v  --silent 127.0.0.1:5005/v0.2/beamtime/data/detector/${stream}/0/last?token=$token --stderr - | grep '"_id":2'
+curl -v  --silent $broker/v0.2/beamtime/data/detector/${stream}/0/last?token=$token --stderr - | grep '"_id":2'
+curl -v  --silent $broker/v0.2/beamtime/data/detector/${stream}/0/last?token=$token --stderr - | grep '"_id":2'
 
 echo "db.data_${stream}.insert({"_id":3})" | mongo ${database_name}
 
-curl -v  --silent 127.0.0.1:5005/v0.2/beamtime/data/detector/${stream}/0/last?token=$token --stderr - | grep '"_id":3'
+curl -v  --silent $broker/v0.2/beamtime/data/detector/${stream}/0/last?token=$token --stderr - | grep '"_id":3'
 
 echo "db.data_${stream}.insert({"_id":4})" | mongo ${database_name}
 
-curl -v  --silent 127.0.0.1:5005/v0.2/beamtime/data/detector/${stream}/${groupid}/next?token=$token --stderr - | grep '"_id":1'
-curl -v  --silent 127.0.0.1:5005/v0.2/beamtime/data/detector/${stream}/0/last?token=$token --stderr - | grep '"_id":4'
+curl -v  --silent $broker/v0.2/beamtime/data/detector/${stream}/${groupid}/next?token=$token --stderr - | grep '"_id":1'
+curl -v  --silent $broker/v0.2/beamtime/data/detector/${stream}/0/last?token=$token --stderr - | grep '"_id":4'
 
 #with a new group
-groupid=`curl -d '' --silent 127.0.0.1:5005/v0.2/creategroup`
-curl -v  --silent 127.0.0.1:5005/v0.2/beamtime/data/detector/${stream}/${groupid}/next?token=$token --stderr - | grep '"_id":1'
-curl -v  --silent 127.0.0.1:5005/v0.2/beamtime/data/detector/${stream}/0/last?token=$token --stderr - | grep '"_id":4'
\ No newline at end of file
+groupid=`curl -d '' --silent $broker/v0.2/creategroup`
+curl -v  --silent $broker/v0.2/beamtime/data/detector/${stream}/${groupid}/next?token=$token --stderr - | grep '"_id":1'
+curl -v  --silent $broker/v0.2/beamtime/data/detector/${stream}/0/last?token=$token --stderr - | grep '"_id":4'
\ No newline at end of file
diff --git a/tests/automatic/broker/get_last/check_windows.bat b/tests/automatic/broker/get_last/check_windows.bat
index 6ffe451b5789577ee2de913cf9ca6fbb56d28d0a..dacb2771c01cd7bd51af8e337ed1598a792fc70f 100644
--- a/tests/automatic/broker/get_last/check_windows.bat
+++ b/tests/automatic/broker/get_last/check_windows.bat
@@ -4,43 +4,31 @@ SET mongo_exe="c:\Program Files\MongoDB\Server\4.2\bin\mongo.exe"
 echo db.data_default.insert({"_id":1}) | %mongo_exe% %database_name%  || goto :error
 echo db.data_default.insert({"_id":2}) | %mongo_exe% %database_name%  || goto :error
 
-set full_name="%1"
-set short_name="%~nx1"
-
-c:\opt\consul\nomad run authorizer.nmd
-c:\opt\consul\nomad run nginx.nmd
-
-ping 192.0.2.1 -n 1 -w 2000 > nul
-
-
-start /B "" "%full_name%" -config settings.json
-
-ping 192.0.2.1 -n 1 -w 5000 > nul
-
-
 set token=%BT_DATA_TOKEN%
 
+curl --silent 127.0.0.1:8400/asapo-discovery/v0.1/asapo-broker?protocol=v0.3 > broker
+set /P broker=< broker
 
-C:\Curl\curl.exe -d '' --silent 127.0.0.1:5005/v0.2/creategroup > groupid
+C:\Curl\curl.exe -d '' --silent %broker%/v0.2/creategroup > groupid
 set /P groupid=< groupid
 
 
-C:\Curl\curl.exe -v  --silent 127.0.0.1:5005/v0.2/beamtime/data/detector/default/0/last?token=%token% --stderr - | findstr /c:\"_id\":2  || goto :error
-C:\Curl\curl.exe -v  --silent 127.0.0.1:5005/v0.2/beamtime/data/detector/default/0/last?token=%token% --stderr - | findstr /c:\"_id\":2  || goto :error
+C:\Curl\curl.exe -v  --silent %broker%/v0.2/beamtime/data/detector/default/0/last?token=%token% --stderr - | findstr /c:\"_id\":2  || goto :error
+C:\Curl\curl.exe -v  --silent %broker%/v0.2/beamtime/data/detector/default/0/last?token=%token% --stderr - | findstr /c:\"_id\":2  || goto :error
 
 echo db.data_default.insert({"_id":3}) | %mongo_exe% %database_name%  || goto :error
-C:\Curl\curl.exe -v  --silent 127.0.0.1:5005/v0.2/beamtime/data/detector/default/0/last?token=%token% --stderr - | findstr /c:\"_id\":3  || goto :error
+C:\Curl\curl.exe -v  --silent %broker%/v0.2/beamtime/data/detector/default/0/last?token=%token% --stderr - | findstr /c:\"_id\":3  || goto :error
 
 echo db.data_default.insert({"_id":4}) | %mongo_exe% %database_name%  || goto :error
 
-C:\Curl\curl.exe -v  --silent 127.0.0.1:5005/v0.2/beamtime/data/detector/default/%groupid%/next?token=%token% --stderr - | findstr /c:\"_id\":1  || goto :error
-C:\Curl\curl.exe -v  --silent 127.0.0.1:5005/v0.2/beamtime/data/detector/default/0/last?token=%token% --stderr - | findstr /c:\"_id\":4  || goto :error
+C:\Curl\curl.exe -v  --silent %broker%/v0.2/beamtime/data/detector/default/%groupid%/next?token=%token% --stderr - | findstr /c:\"_id\":1  || goto :error
+C:\Curl\curl.exe -v  --silent %broker%/v0.2/beamtime/data/detector/default/0/last?token=%token% --stderr - | findstr /c:\"_id\":4  || goto :error
 
 
-C:\Curl\curl.exe -d '' --silent 127.0.0.1:5005/v0.2/creategroup > groupid
+C:\Curl\curl.exe -d '' --silent %broker%/v0.2/creategroup > groupid
 set /P groupid=< groupid
-C:\Curl\curl.exe -v  --silent 127.0.0.1:5005/v0.2/beamtime/data/detector/default/%groupid%/next?token=%token% --stderr - | findstr /c:\"_id\":1  || goto :error
-C:\Curl\curl.exe -v  --silent 127.0.0.1:5005/v0.2/beamtime/data/detector/default/0/last?token=%token% --stderr - | findstr /c:\"_id\":4  || goto :error
+C:\Curl\curl.exe -v  --silent %broker%/v0.2/beamtime/data/detector/default/%groupid%/next?token=%token% --stderr - | findstr /c:\"_id\":1  || goto :error
+C:\Curl\curl.exe -v  --silent %broker%/v0.2/beamtime/data/detector/default/0/last?token=%token% --stderr - | findstr /c:\"_id\":4  || goto :error
 
 
 goto :clean
@@ -50,9 +38,6 @@ call :clean
 exit /b 1
 
 :clean
-Taskkill /IM "%short_name%" /F
 echo db.dropDatabase() | %mongo_exe% %database_name%
 del /f groupid
-c:\opt\consul\nomad stop authorizer
-c:\opt\consul\nomad stop nginx
-c:\opt\consul\nomad run nginx_kill.nmd  && c:\opt\consul\nomad stop -yes -purge nginx_kill
+del /f broker
diff --git a/tests/automatic/broker/get_meta/CMakeLists.txt b/tests/automatic/broker/get_meta/CMakeLists.txt
index dc491f8bf71ff293f831de25273b189a82d2e253..64a43e64beae8ea75441b4eca88f9521cda1fa14 100644
--- a/tests/automatic/broker/get_meta/CMakeLists.txt
+++ b/tests/automatic/broker/get_meta/CMakeLists.txt
@@ -3,9 +3,5 @@ set(TARGET_NAME asapo-broker)
 ################################
 # Testing
 ################################
-prepare_asapo()
 
-configure_file(${CMAKE_SOURCE_DIR}/tests/automatic/settings/broker_settings.json settings.json COPYONLY)
-
-add_script_test("${TARGET_NAME}-getmeta" "$<TARGET_PROPERTY:${TARGET_NAME},EXENAME> $<TARGET_PROPERTY:asapo,EXENAME>" nomem
-        )
+add_script_test("${TARGET_NAME}-getmeta" "" nomem)
diff --git a/tests/automatic/broker/get_meta/check_linux.sh b/tests/automatic/broker/get_meta/check_linux.sh
index 14b23b4d6368cb4cf2d6f86cf8b01160c96051fe..100138a7a35b130877e7ce570fd7bd363e4b7c88 100644
--- a/tests/automatic/broker/get_meta/check_linux.sh
+++ b/tests/automatic/broker/get_meta/check_linux.sh
@@ -9,26 +9,16 @@ trap Cleanup EXIT
 Cleanup() {
 	echo cleanup
 	echo "db.dropDatabase()" | mongo ${database_name}
-	kill -9 $brokerid
-  nomad stop nginx
-  nomad run nginx_kill.nmd  && nomad stop -yes -purge nginx_kill
-  nomad stop authorizer
 }
 
 echo 'db.meta.insert({"_id":0,"data":"test"})' | mongo ${database_name}
 
 token=$BT_TEST_TOKEN
 
-nomad run nginx.nmd
-nomad run authorizer.nmd
-sleep 1
+broker=`curl --silent 127.0.0.1:8400/asapo-discovery/v0.1/asapo-broker?protocol=v0.3`
+echo found broker at $broker
 
 
-$1 -config settings.json &
-
-sleep 0.3
-brokerid=`echo $!`
-
-curl -v  --silent 127.0.0.1:5005/v0.2/beamtime/test/detector/default/0/meta/0?token=$token --stderr - | tee /dev/stderr | grep '"data":"test"'
-curl -v  --silent 127.0.0.1:5005/v0.2/beamtime/test/detector/default/0/meta/1?token=$token --stderr - | tee /dev/stderr | grep 'no documents'
+curl -v  --silent $broker/v0.2/beamtime/test/detector/default/0/meta/0?token=$token --stderr - | tee /dev/stderr | grep '"data":"test"'
+curl -v  --silent $broker/v0.2/beamtime/test/detector/default/0/meta/1?token=$token --stderr - | tee /dev/stderr | grep 'no documents'
 
diff --git a/tests/automatic/broker/get_meta/check_windows.bat b/tests/automatic/broker/get_meta/check_windows.bat
index c5dab94bb7b03fb541d4e14e44d360a8171f3327..d9b79672ac65a61570bac60e1ade22bb3b9a8964 100644
--- a/tests/automatic/broker/get_meta/check_windows.bat
+++ b/tests/automatic/broker/get_meta/check_windows.bat
@@ -3,23 +3,14 @@ SET mongo_exe="c:\Program Files\MongoDB\Server\4.2\bin\mongo.exe"
 
 echo db.meta.insert({"_id":0}) | %mongo_exe% %database_name%  || goto :error
 
-set full_name="%1"
-set short_name="%~nx1"
-
-c:\opt\consul\nomad run authorizer.nmd
-c:\opt\consul\nomad run nginx.nmd
-
-ping 192.0.2.1 -n 1 -w 2000 > nul
-
-start /B "" "%full_name%" -config settings.json
-
-ping 192.0.2.1 -n 1 -w 5000 > nul
+curl --silent 127.0.0.1:8400/asapo-discovery/v0.1/asapo-broker?protocol=v0.3 > broker
+set /P broker=< broker
 
 set token=%BT_DATA_TOKEN%
 
 
-C:\Curl\curl.exe -v  --silent 127.0.0.1:5005/v0.2/beamtime/data/detector/default/0/meta/0?token=%token% --stderr - | findstr /c:\"_id\":0  || goto :error
-C:\Curl\curl.exe -v  --silent 127.0.0.1:5005/v0.2/beamtime/data/detector/default/0/meta/1?token=%token% --stderr - | findstr /c:"no documents"  || goto :error
+C:\Curl\curl.exe -v  --silent %broker%/v0.2/beamtime/data/detector/default/0/meta/0?token=%token% --stderr - | findstr /c:\"_id\":0  || goto :error
+C:\Curl\curl.exe -v  --silent %broker%/v0.2/beamtime/data/detector/default/0/meta/1?token=%token% --stderr - | findstr /c:"no documents"  || goto :error
 
 
 goto :clean
@@ -29,9 +20,5 @@ call :clean
 exit /b 1
 
 :clean
-Taskkill /IM "%short_name%" /F
 echo db.dropDatabase() | %mongo_exe% %database_name%
 del /f groupid
-c:\opt\consul\nomad stop authorizer
-c:\opt\consul\nomad stop nginx
-c:\opt\consul\nomad run nginx_kill.nmd  && c:\opt\consul\nomad stop -yes -purge nginx_kill
diff --git a/tests/automatic/broker/get_next/CMakeLists.txt b/tests/automatic/broker/get_next/CMakeLists.txt
index 1eba288a03006af23d30193982fb3fda054548a1..5caffad4ae41b6c582c87543d2c795cb536ede8b 100644
--- a/tests/automatic/broker/get_next/CMakeLists.txt
+++ b/tests/automatic/broker/get_next/CMakeLists.txt
@@ -3,9 +3,5 @@ set(TARGET_NAME asapo-broker)
 ################################
 # Testing
 ################################
-prepare_asapo()
 
-configure_file(${CMAKE_SOURCE_DIR}/tests/automatic/settings/broker_settings.json settings.json COPYONLY)
-
-add_script_test("${TARGET_NAME}-getnext" "$<TARGET_PROPERTY:${TARGET_NAME},EXENAME> $<TARGET_PROPERTY:asapo,EXENAME>" nomem
-        )
+add_script_test("${TARGET_NAME}-getnext" "" nomem)
diff --git a/tests/automatic/broker/get_next/check_linux.sh b/tests/automatic/broker/get_next/check_linux.sh
index 7bce26802ed0e90dbf396aa9f3c349cb1e491001..bcef1d69dbff830086679c027c77828f680dc117 100644
--- a/tests/automatic/broker/get_next/check_linux.sh
+++ b/tests/automatic/broker/get_next/check_linux.sh
@@ -10,10 +10,6 @@ trap Cleanup EXIT
 Cleanup() {
 	echo cleanup
 	echo "db.dropDatabase()" | mongo ${database_name}
-	kill -9 $brokerid
-  nomad stop nginx
-  nomad run nginx_kill.nmd  && nomad stop -yes -purge nginx_kill
-  nomad stop authorizer
 }
 
 echo "db.data_${stream}.insert({"_id":2})" | mongo ${database_name}
@@ -21,21 +17,15 @@ echo "db.data_${stream}.insert({"_id":1})" | mongo ${database_name}
 
 token=$BT_DATA_TOKEN
 
-nomad run nginx.nmd
-nomad run authorizer.nmd
-sleep 1
+broker=`curl --silent 127.0.0.1:8400/asapo-discovery/v0.1/asapo-broker?protocol=v0.3`
+echo found broker at $broker
 
 
-$1 -config settings.json &
-
-sleep 0.3
-brokerid=`echo $!`
-
-groupid=`curl -d '' --silent 127.0.0.1:5005/v0.3/creategroup`
-curl -v  --silent 127.0.0.1:5005/v0.3/beamtime/data/source/${stream}/${groupid}/next?token=$token --stderr - | tee /dev/stderr  | grep '"_id":1'
-curl -v  --silent 127.0.0.1:5005/v0.3/beamtime/data/source/${stream}/${groupid}/next?token=$token --stderr - | tee /dev/stderr  | grep '"_id":2'
-curl -v  --silent 127.0.0.1:5005/v0.3/beamtime/data/source/${stream}/${groupid}/next?token=$token --stderr - | tee /dev/stderr  | grep '"id_max":2'
+groupid=`curl -d '' --silent $broker/v0.3/creategroup`
+curl -v  --silent $broker/v0.3/beamtime/data/source/${stream}/${groupid}/next?token=$token --stderr - | tee /dev/stderr  | grep '"_id":1'
+curl -v  --silent $broker/v0.3/beamtime/data/source/${stream}/${groupid}/next?token=$token --stderr - | tee /dev/stderr  | grep '"_id":2'
+curl -v  --silent $broker/v0.3/beamtime/data/source/${stream}/${groupid}/next?token=$token --stderr - | tee /dev/stderr  | grep '"id_max":2'
 
 # with a new group
-groupid=`curl -d '' --silent 127.0.0.1:5005/v0.3/creategroup`
-curl -v  --silent 127.0.0.1:5005/v0.3/beamtime/data/source/${stream}/${groupid}/next?token=$token --stderr - | tee /dev/stderr | grep '"_id":1'
\ No newline at end of file
+groupid=`curl -d '' --silent $broker/v0.3/creategroup`
+curl -v  --silent $broker/v0.3/beamtime/data/source/${stream}/${groupid}/next?token=$token --stderr - | tee /dev/stderr | grep '"_id":1'
\ No newline at end of file
diff --git a/tests/automatic/broker/get_next/check_windows.bat b/tests/automatic/broker/get_next/check_windows.bat
index 81330cd76affe7defc6a0a30e6ae57cdf1b03976..ba8760fa73377ce49e913da2a9f09f683871d393 100644
--- a/tests/automatic/broker/get_next/check_windows.bat
+++ b/tests/automatic/broker/get_next/check_windows.bat
@@ -4,29 +4,23 @@ SET mongo_exe="c:\Program Files\MongoDB\Server\4.2\bin\mongo.exe"
 echo db.data_default.insert({"_id":1}) | %mongo_exe% %database_name%  || goto :error
 echo db.data_default.insert({"_id":2}) | %mongo_exe% %database_name%  || goto :error
 
-set full_name="%1"
-set short_name="%~nx1"
-
 set token=%BT_DATA_TOKEN%
 
-c:\opt\consul\nomad run authorizer.nmd
-c:\opt\consul\nomad run nginx.nmd
+curl --silent 127.0.0.1:8400/asapo-discovery/v0.1/asapo-broker?protocol=v0.3 > broker
+set /P broker=< broker
 
-ping 192.0.2.1 -n 1 -w 2000 > nul
 
-start /B "" "%full_name%" -config settings.json
+C:\Curl\curl.exe -d '' --silent %broker%/v0.3/creategroup > groupid
+set /P groupid=< groupid
 
-ping 192.0.2.1 -n 1 -w 5000 > nul
 
-C:\Curl\curl.exe -d '' --silent 127.0.0.1:5005/v0.3/creategroup > groupid
-set /P groupid=< groupid
-C:\Curl\curl.exe -v  --silent 127.0.0.1:5005/v0.3/beamtime/data/source/default/%groupid%/next?token=%token% --stderr - | findstr /c:\"_id\":1  || goto :error
-C:\Curl\curl.exe -v  --silent 127.0.0.1:5005/v0.3/beamtime/data/source/default/%groupid%/next?token=%token% --stderr - | findstr /c:\"_id\":2  || goto :error
-C:\Curl\curl.exe -v  --silent 127.0.0.1:5005/v0.3/beamtime/data/source/default/%groupid%/next?token=%token% --stderr - | findstr  /c:\"id_max\":2  || goto :error
+C:\Curl\curl.exe -v  --silent %broker%/v0.3/beamtime/data/source/default/%groupid%/next?token=%token% --stderr - | findstr /c:\"_id\":1  || goto :error
+C:\Curl\curl.exe -v  --silent %broker%/v0.3/beamtime/data/source/default/%groupid%/next?token=%token% --stderr - | findstr /c:\"_id\":2  || goto :error
+C:\Curl\curl.exe -v  --silent %broker%/v0.3/beamtime/data/source/default/%groupid%/next?token=%token% --stderr - | findstr  /c:\"id_max\":2  || goto :error
 
-C:\Curl\curl.exe -d '' --silent 127.0.0.1:5005/v0.3/creategroup > groupid
+C:\Curl\curl.exe -d '' --silent %broker%/v0.3/creategroup > groupid
 set /P groupid=< groupid
-C:\Curl\curl.exe -v  --silent 127.0.0.1:5005/v0.3/beamtime/data/source/default/%groupid%/next?token=%token% --stderr - | findstr /c:\"_id\":1  || goto :error
+C:\Curl\curl.exe -v  --silent %broker%/v0.3/beamtime/data/source/default/%groupid%/next?token=%token% --stderr - | findstr /c:\"_id\":1  || goto :error
 
 goto :clean
 
@@ -35,10 +29,6 @@ call :clean
 exit /b 1
 
 :clean
-Taskkill /IM "%short_name%" /F
 echo db.dropDatabase() | %mongo_exe% %database_name%
 del /f token
-del /f groupid
-c:\opt\consul\nomad stop authorizer
-c:\opt\consul\nomad stop nginx
-c:\opt\consul\nomad run nginx_kill.nmd  && c:\opt\consul\nomad stop -yes -purge nginx_kill
+del /f groupid
\ No newline at end of file
diff --git a/tests/automatic/bug_fixes/consumer_python_memleak/CMakeLists.txt b/tests/automatic/bug_fixes/consumer_python_memleak/CMakeLists.txt
index 352d76a2b71a0d16e953d3f91eaac692c6dafbb2..f269003b5152b85fcaf9d5b564362e9dc31fb20f 100644
--- a/tests/automatic/bug_fixes/consumer_python_memleak/CMakeLists.txt
+++ b/tests/automatic/bug_fixes/consumer_python_memleak/CMakeLists.txt
@@ -1,8 +1,6 @@
 set(TARGET_NAME consumer_python_memleak)
 
 
-prepare_asapo()
-
 if (UNIX)
     get_target_property(PYTHON_LIBS python-lib-consumer BINARY_DIR)
 else()
diff --git a/tests/automatic/bug_fixes/consumer_python_memleak/check_linux.sh b/tests/automatic/bug_fixes/consumer_python_memleak/check_linux.sh
index f06e415503d8880ec671ad4cb9523bdeab92aab5..8b10f8421d6a79009b1064cdb8ada072dfc46eb1 100644
--- a/tests/automatic/bug_fixes/consumer_python_memleak/check_linux.sh
+++ b/tests/automatic/bug_fixes/consumer_python_memleak/check_linux.sh
@@ -13,21 +13,12 @@ token=$ASAPO_TEST_RW_TOKEN
 Cleanup() {
     echo cleanup
     rm -rf $fname
-    nomad stop nginx
-    nomad run nginx_kill.nmd  && nomad stop -yes -purge nginx_kill
-    nomad stop broker
-    nomad stop discovery
     echo "db.dropDatabase()" | mongo ${beamtime_id}_stream
 }
 
 fname=test.dat
 size=100000000 # 10MB
 
-nomad run nginx.nmd
-nomad run discovery.nmd
-nomad run broker.nmd
-
-sleep 1
 
 echo 'db.data_default.insert({"_id":'1',"size":'$size',"name":"'$fname'","timestamp":1,"source":"none","buf_id":0,"dataset_substream":0,"meta":{}})' | mongo ${beamtime_id}_stream
 dd if=/dev/zero of=$fname bs=$size count=1
diff --git a/tests/automatic/bug_fixes/error-sending-data-using-callback-method/CMakeLists.txt b/tests/automatic/bug_fixes/error-sending-data-using-callback-method/CMakeLists.txt
index 08bd8372ea5cd0b79f3fe94dcefebe75facd821e..5ce9b9f96f35b3928af862623d5ea1197e526766 100644
--- a/tests/automatic/bug_fixes/error-sending-data-using-callback-method/CMakeLists.txt
+++ b/tests/automatic/bug_fixes/error-sending-data-using-callback-method/CMakeLists.txt
@@ -3,9 +3,6 @@ set(TARGET_NAME bugfix_callback)
 ################################
 # Testing
 ################################
-prepare_asapo()
-
-prepare_asapo()
 
 if (UNIX)
     get_target_property(PYTHON_LIBS python-lib-producer BINARY_DIR)
diff --git a/tests/automatic/bug_fixes/error-sending-data-using-callback-method/bugfix_callback.py b/tests/automatic/bug_fixes/error-sending-data-using-callback-method/bugfix_callback.py
index c0858795a1bdf11a15e24bf61b52751c2b574df1..485410e11255acf83f84bb082ace4a60b9f72ba7 100644
--- a/tests/automatic/bug_fixes/error-sending-data-using-callback-method/bugfix_callback.py
+++ b/tests/automatic/bug_fixes/error-sending-data-using-callback-method/bugfix_callback.py
@@ -28,6 +28,8 @@ class AsapoSender:
 producer  = asapo_producer.create_producer(endpoint,'processed',beamtime,'auto', data_source, token, nthreads, 600000)
 producer.set_log_level("debug")
 
+print(asapo_producer.__version__)
+
 sender = AsapoSender(producer)
 
 meta={}
diff --git a/tests/automatic/bug_fixes/error-sending-data-using-callback-method/check_linux.sh b/tests/automatic/bug_fixes/error-sending-data-using-callback-method/check_linux.sh
index 09e978362f9699b8dd9c2ac69c0b9fe5f4581940..c525981406ced44181ed86166e1e08dee1b7baa4 100644
--- a/tests/automatic/bug_fixes/error-sending-data-using-callback-method/check_linux.sh
+++ b/tests/automatic/bug_fixes/error-sending-data-using-callback-method/check_linux.sh
@@ -16,23 +16,13 @@ receiver_folder=${receiver_root_folder}/${facility}/gpfs/${beamline}/${year}/dat
 Cleanup() {
 	echo cleanup
 	rm -rf ${receiver_root_folder}
-    nomad stop receiver >/dev/null
-    nomad stop discovery >/dev/null
-    nomad stop authorizer >/dev/null
-    nomad stop nginx >/dev/null
-    nomad run nginx_kill.nmd  && nomad stop -yes -purge nginx_kill > /dev/null
-    echo "db.dropDatabase()" | mongo ${beamtime_id}_${data_source} >/dev/null
+  echo "db.dropDatabase()" | mongo ${beamtime_id}_${data_source} >/dev/null
 }
 
 export PYTHONPATH=$2:${PYTHONPATH}
 
 echo "db.${beamtime_id}_${data_source}.insert({dummy:1})" | mongo ${beamtime_id}_${data_source} >/dev/null
 
-nomad run authorizer.nmd >/dev/null
-nomad run nginx.nmd >/dev/null
-nomad run receiver_tcp.nmd >/dev/null
-nomad run discovery.nmd >/dev/null
-
 mkdir -p ${receiver_folder}
 
 echo test > file1
diff --git a/tests/automatic/bug_fixes/producer_send_after_restart/CMakeLists.txt b/tests/automatic/bug_fixes/producer_send_after_restart/CMakeLists.txt
index e974aa40b4671c5f42f49f5f36fa86d1c89e352d..08fb1205fa1cb603692b6d714766ab0586604977 100644
--- a/tests/automatic/bug_fixes/producer_send_after_restart/CMakeLists.txt
+++ b/tests/automatic/bug_fixes/producer_send_after_restart/CMakeLists.txt
@@ -13,4 +13,4 @@ endif()
 
 configure_file(test.json.in test.json @ONLY)
 
-add_script_test("${TARGET_NAME}-tcp" "$<TARGET_FILE:event-monitor-producer-bin> $<TARGET_FILE:getnext> $<TARGET_PROPERTY:asapo,EXENAME> tcp" nomem)
+add_script_test("${TARGET_NAME}-tcp" "$<TARGET_FILE:event-monitor-producer-bin> $<TARGET_FILE:getnext> $<TARGET_PROPERTY:asapo,EXENAME>" nomem)
diff --git a/tests/automatic/bug_fixes/producer_send_after_restart/check_linux.sh b/tests/automatic/bug_fixes/producer_send_after_restart/check_linux.sh
index ea36e9886b6209ddef6e162e6072b0d3fe6c6bb2..038868ae598c3a7080bd4982fb6b4f602e51f6dd 100644
--- a/tests/automatic/bug_fixes/producer_send_after_restart/check_linux.sh
+++ b/tests/automatic/bug_fixes/producer_send_after_restart/check_linux.sh
@@ -7,7 +7,6 @@ trap Cleanup EXIT
 producer_bin=$1
 consumer_bin=$2
 asapo_tool_bin=$3
-network_type=$4
 
 beamtime_id=asapo_test
 
@@ -27,19 +26,9 @@ Cleanup() {
     echo cleanup
     rm -rf ${receiver_root_folder}
     rm -rf /tmp/asapo/test_in
-    nomad stop nginx
-    nomad run nginx_kill.nmd  && nomad stop -yes -purge nginx_kill
-    nomad stop receiver
-    nomad stop discovery
-    nomad stop authorizer
     echo "db.dropDatabase()" | mongo ${beamtime_id}_detector
 }
 
-nomad run nginx.nmd
-nomad run authorizer.nmd
-nomad run receiver_${network_type}.nmd
-nomad run discovery.nmd
-
 sleep 1
 mkdir  /tmp/asapo/test_in/processed
 #producer
@@ -53,7 +42,7 @@ echo hello > /tmp/asapo/test_in/processed/file1
 sleep 1
 nomad stop receiver
 sleep 1
-nomad run receiver_${network_type}.nmd
+nomad run receiver_tcp.nmd
 
 echo hello > /tmp/asapo/test_in/processed/file1
 sleep 1
diff --git a/tests/automatic/bug_fixes/producer_send_after_restart/check_windows.bat b/tests/automatic/bug_fixes/producer_send_after_restart/check_windows.bat
index b039195e0a103dc00763d16a212d545d7c804b4f..986a5506e6d98b1154a7ca6f530234338c13a240 100644
--- a/tests/automatic/bug_fixes/producer_send_after_restart/check_windows.bat
+++ b/tests/automatic/bug_fixes/producer_send_after_restart/check_windows.bat
@@ -1,5 +1,3 @@
-
-
 SET mongo_exe="c:\Program Files\MongoDB\Server\4.2\bin\mongo.exe"
 SET beamtime_id=asapo_test
 SET beamline=test
@@ -12,8 +10,6 @@ set proxy_address="127.0.0.1:8400"
 
 echo db.%beamtime_id%_detector.insert({dummy:1}) | %mongo_exe% %beamtime_id%_detector
 
-call start_services.bat
-
 "%3" token -endpoint http://127.0.0.1:8400/asapo-authorizer -secret admin_token.key -types read %beamtime_id% > token
 set /P token=< token
 
@@ -46,8 +42,6 @@ call :clean
 exit /b 1
 
 :clean
-call stop_services.bat
-
 rmdir /S /Q %receiver_root_folder%
 rmdir /S /Q c:\tmp\asapo\test_in
 Taskkill /IM "%producer_short_name%" /F
diff --git a/tests/automatic/bug_fixes/python_deadlock/CMakeLists.txt b/tests/automatic/bug_fixes/python_deadlock/CMakeLists.txt
index b4007ef6387cb0aac545de107c108ebf329e5531..b2d5a3ccffc6d6da1d7baee1b6f6ed62149dc3ef 100644
--- a/tests/automatic/bug_fixes/python_deadlock/CMakeLists.txt
+++ b/tests/automatic/bug_fixes/python_deadlock/CMakeLists.txt
@@ -1,8 +1,6 @@
 set(TARGET_NAME python_deadlock_producer)
 
 
-prepare_asapo()
-
 find_package (Python3 REQUIRED)
 
 if (UNIX)
diff --git a/tests/automatic/bug_fixes/receiver_cpu_usage/CMakeLists.txt b/tests/automatic/bug_fixes/receiver_cpu_usage/CMakeLists.txt
index 15daad97f8c7aaf2a3068d839b12902da6a2ded3..f566fedf0ea5288e3c1dcbadcc0a00b34ee51091 100644
--- a/tests/automatic/bug_fixes/receiver_cpu_usage/CMakeLists.txt
+++ b/tests/automatic/bug_fixes/receiver_cpu_usage/CMakeLists.txt
@@ -3,7 +3,6 @@ set(TARGET_NAME receiver_cpu_usage)
 ################################
 # Testing
 ################################
-prepare_asapo()
 set (ROOT_PATH "/tmp/asapo/")
 
 configure_file(test.json.in test.json @ONLY)
diff --git a/tests/automatic/bug_fixes/receiver_cpu_usage/check_linux.sh b/tests/automatic/bug_fixes/receiver_cpu_usage/check_linux.sh
index 8877ee587ddafbdabadb2fcf61b9ce2a55856564..0d74d4cdd3d26c0ed06ce30f464c2b4e2a159025 100644
--- a/tests/automatic/bug_fixes/receiver_cpu_usage/check_linux.sh
+++ b/tests/automatic/bug_fixes/receiver_cpu_usage/check_linux.sh
@@ -23,21 +23,9 @@ Cleanup() {
     kill $producerid
     rm -rf /tmp/asapo/test_in/test1
     rm -rf ${receiver_root_folder}
-    nomad stop nginx
-    nomad run nginx_kill.nmd  && nomad stop -yes -purge nginx_kill
-    nomad stop receiver
-    nomad stop discovery
-    nomad stop authorizer
     echo "db.dropDatabase()" | mongo ${beamtime_id}_detector
 }
 
-nomad run nginx.nmd
-nomad run authorizer.nmd
-nomad run receiver_tcp.nmd
-nomad run discovery.nmd
-
-sleep 1
-
 #producer
 mkdir -p ${receiver_folder}
 $1 test.json &
diff --git a/tests/automatic/bug_fixes/streamlist_python_multithread/CMakeLists.txt b/tests/automatic/bug_fixes/streamlist_python_multithread/CMakeLists.txt
index 704002fc8e41064709fb34552514a79c2db1cc82..e61d987ed6540510a9f64a20d9df2f0170f1ecdd 100644
--- a/tests/automatic/bug_fixes/streamlist_python_multithread/CMakeLists.txt
+++ b/tests/automatic/bug_fixes/streamlist_python_multithread/CMakeLists.txt
@@ -1,11 +1,8 @@
 set(TARGET_NAME streamlist_python)
 
 
-prepare_asapo()
-
 find_package (Python3 REQUIRED)
 
-
 if (UNIX)
     get_target_property(PYTHON_LIBS python-lib-consumer BINARY_DIR)
     get_target_property(PYTHON_LIBS_PRODUCER python-lib-producer BINARY_DIR)
diff --git a/tests/automatic/bug_fixes/streamlist_python_multithread/check_linux.sh b/tests/automatic/bug_fixes/streamlist_python_multithread/check_linux.sh
index 678925935e45b108d355dd5755ddc33f24dc247f..51ab3ef4cd2c5b80a9d4fe7a5f793986a967970b 100644
--- a/tests/automatic/bug_fixes/streamlist_python_multithread/check_linux.sh
+++ b/tests/automatic/bug_fixes/streamlist_python_multithread/check_linux.sh
@@ -9,24 +9,10 @@ token=$ASAPO_TEST_RW_TOKEN
 
 Cleanup() {
     echo cleanup
-    nomad stop nginx
-    nomad run nginx_kill.nmd  && nomad stop -yes -purge nginx_kill
-    nomad stop broker
-    nomad stop discovery
-    nomad stop authorizer
-    nomad stop receiver
     echo "db.dropDatabase()" | mongo ${beamtime_id}_source_1
     echo "db.dropDatabase()" | mongo ${beamtime_id}_source_2
 }
 
-nomad run nginx.nmd
-nomad run discovery.nmd
-nomad run broker.nmd
-nomad run receiver_tcp.nmd
-nomad run authorizer.nmd
-
-sleep 1
-
 export PYTHONPATH=$1:$2:${PYTHONPATH}
 export Python3_EXECUTABLE=$3
 
diff --git a/tests/automatic/common_scripts/CMakeLists.txt b/tests/automatic/common_scripts/CMakeLists.txt
new file mode 100644
index 0000000000000000000000000000000000000000..788be8b5476a60d8db49aaf3dc53d55035dc7415
--- /dev/null
+++ b/tests/automatic/common_scripts/CMakeLists.txt
@@ -0,0 +1,9 @@
+prepare_asapo()
+
+IF (WIN32)
+    configure_file(start_services.bat start_services.bat @ONLY)
+    configure_file(stop_services.bat stop_services.bat @ONLY)
+ELSE ()
+    configure_file(start_services.sh start_services.sh @ONLY)
+    configure_file(stop_services.sh stop_services.sh @ONLY)
+ENDIF()
diff --git a/tests/automatic/common_scripts/start_services.sh b/tests/automatic/common_scripts/start_services.sh
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..566fe3dfc91b3f81afc0a770d95418657fd8d270 100644
--- a/tests/automatic/common_scripts/start_services.sh
+++ b/tests/automatic/common_scripts/start_services.sh
@@ -0,0 +1,21 @@
+nomad run receiver_tcp.nmd
+nomad run authorizer.nmd
+nomad run discovery.nmd
+nomad run broker.nmd
+nomad run nginx.nmd
+nomad run file_transfer.nmd
+
+while true
+do
+  sleep 1
+  echo starting services
+  curl --silent 127.0.0.1:8400/asapo-discovery/v0.1/asapo-receiver?protocol=v0.1 --stderr - | grep 127.0.0.1  || continue
+  echo nginx,discovery, recevier started
+  curl --silent 127.0.0.1:8400/asapo-discovery/v0.1/asapo-broker?protocol=v0.1 --stderr - | grep 127.0.0.1 || continue
+  echo broker started
+  curl --silent 127.0.0.1:8400/asapo-discovery/v0.1/asapo-file-transfer?protocol=v0.1 --stderr -  | grep 127.0.0.1 || continue
+  echo file transfer started
+  break
+done
+
+echo services ready
\ No newline at end of file
diff --git a/tests/automatic/common_scripts/stop_services.sh b/tests/automatic/common_scripts/stop_services.sh
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..d10019f51241296db1aaf37c6a6e7ef0f8613eab 100644
--- a/tests/automatic/common_scripts/stop_services.sh
+++ b/tests/automatic/common_scripts/stop_services.sh
@@ -0,0 +1,7 @@
+nomad stop nginx
+nomad run nginx_kill.nmd  && nomad stop -yes -purge nginx_kill
+nomad stop discovery
+nomad stop broker
+nomad stop receiver
+nomad stop authorizer
+nomad stop file_transfer
diff --git a/tests/automatic/settings/authorizer_settings.json.tpl.lin b/tests/automatic/settings/authorizer_settings.json.tpl.lin
index 62e187d4edaf97da92a626c68aa5bcaea2e439d9..0980b029ab5f75ff7c2fc7fc4c6a735eb763ad40 100644
--- a/tests/automatic/settings/authorizer_settings.json.tpl.lin
+++ b/tests/automatic/settings/authorizer_settings.json.tpl.lin
@@ -1,6 +1,8 @@
 {
   "Port": {{ env "NOMAD_PORT_authorizer" }},
   "LogLevel":"debug",
+  "RootBeamtimesFolder":"/tmp/asapo/asap3",
+  "CurrentBeamlinesFolder":"/tmp/asapo/beamline",
   "AlwaysAllowedBeamtimes":[{"beamtimeId":"asapo_test","beamline":"test","corePath":"/tmp/asapo/receiver/files/test_facility/gpfs/test/2019/data/asapo_test",
   "beamline-path":"/tmp/asapo/receiver/files/beamline/test/current"},
   {"beamtimeId":"asapo_test1","beamline":"test1","corePath":"/tmp/asapo/receiver/files/test_facility/gpfs/test1/2019/data/asapo_test1"},
diff --git a/tests/automatic/settings/authorizer_settings.json.tpl.win b/tests/automatic/settings/authorizer_settings.json.tpl.win
index 810ad2e5a980e125d782c977aef733820ad1e439..a34aeee04de2331356421a45113a7717f9ffb798 100644
--- a/tests/automatic/settings/authorizer_settings.json.tpl.win
+++ b/tests/automatic/settings/authorizer_settings.json.tpl.win
@@ -1,6 +1,8 @@
 {
   "Port": {{ env "NOMAD_PORT_authorizer" }},
   "LogLevel":"debug",
+  "RootBeamtimesFolder":"c:\\tmp\\asapo\\asap3",
+  "CurrentBeamlinesFolder":"c:\\tmp\\asapo\\beamline",
   "AlwaysAllowedBeamtimes":[{"beamtimeId":"asapo_test","beamline":"test","corePath":"c:\\tmp\\asapo\\receiver\\files\\test_facility\\gpfs\\test\\2019\\data\\asapo_test",
   "beamline-path":"c:\\tmp\\asapo\\receiver\\files\\beamline\\test\\current"},
   {"beamtimeId":"asapo_test1","beamline":"test1","corePath":"c:\\tmp\\asapo\\receiver\\files\\test_facility\\gpfs\\test1\\2019\\data\\asapo_test1"},