ARVADOS_LOG=${ARVADOS_DIR}/arvados.log
ARVADOS_CONF=${WB2_DIR}/tools/arvados_config.yml
+VOCABULARY_CONF=${WB2_DIR}/tools/example-vocabulary.json
if [ ! -f "${WB2_DIR}/src/index.tsx" ]; then
echo "ERROR: '${WB2_DIR}' isn't workbench2's directory"
~/go/bin/arvados-server install -type test || exit 1
echo "Launching arvados in test mode..."
+TMPSUBDIR=$(mktemp -d -p /tmp | cut -d \/ -f3) # Removes the /tmp/ part for the regex below
+TMPDIR=/tmp/${TMPSUBDIR}
+cp ${VOCABULARY_CONF} ${TMPDIR}/voc.json
+cp ${ARVADOS_CONF} ${TMPDIR}/arvados.yml
+sed -i "s/VocabularyPath: \".*\"/VocabularyPath: \"\/tmp\/${TMPSUBDIR}\/voc.json\"/" ${TMPDIR}/arvados.yml
coproc arvboot (~/go/bin/arvados-server boot \
-type test \
- -config ${ARVADOS_CONF} \
+ -config ${TMPDIR}/arvados.yml \
+ -no-workbench1 \
+ -no-workbench2 \
-own-temporary-database \
-timeout 20m 2> ${ARVADOS_LOG})
trap cleanup ERR EXIT
-read controllerURL <&"${arvboot[0]}" || exit 1
+read controllerInfo <&"${arvboot[0]}" || exit 1
+controllerURL=`echo "$controllerInfo" | awk '{print $1;}'`;
echo "Arvados up and running at ${controllerURL}"
IFS='/' ; read -ra controllerHostPort <<< "${controllerURL}" ; unset IFS
controllerHostPort=${controllerHostPort[2]}
# Wait for workbench2 to be up.
# Using https-get to avoid false positive 'ready' detection.
-yarn run wait-on --timeout 300000 https-get://localhost:${WB2_PORT} || exit 1
+yarn run wait-on --timeout 300000 https-get://127.0.0.1:${WB2_PORT} || exit 1
echo "Running tests..."
CYPRESS_system_token=systemusertesttoken1234567890aoeuidhtnsqjkxbmwvzpy \
CYPRESS_controller_url=${controllerURL} \
- CYPRESS_BASE_URL=https://localhost:${WB2_PORT} \
+ CYPRESS_BASE_URL=https://127.0.0.1:${WB2_PORT} \
yarn run cypress ${CYPRESS_MODE}