3 # TODO Reuse the fuction in run_test.sh. This is its duplication.
4 function need_download()
8 if [ ! -e $LOCAL_PATH ]; then
11 # Ignore checking md5 in cache
12 if [ ! -z $IGNORE_MD5 ] && [ "$IGNORE_MD5" == "1" ]; then
16 LOCAL_HASH=$(md5sum $LOCAL_PATH | awk '{ print $1 }')
17 REMOTE_HASH=$(curl -ss $REMOTE_URL | md5sum | awk '{ print $1 }')
18 # TODO Emit an error when Content-MD5 field was not found. (Server configuration issue)
19 if [ "$LOCAL_HASH" != "$REMOTE_HASH" ]; then
20 echo "Downloaded file is outdated or incomplete."
26 # TODO Reuse the fuction in run_test.sh. This is its duplication.
32 echo "Downloading tests:"
33 echo "======================"
34 for TEST_NAME in $SELECTED_TESTS; do
37 echo "======================"
39 for TEST_NAME in $SELECTED_TESTS; do
40 # Test configure initialization
41 MODELFILE_SERVER_PATH=""
43 source $TEST_ROOT_PATH/$TEST_NAME/config.sh
45 TEST_CACHE_PATH=$CACHE_ROOT_PATH/$TEST_NAME
46 MODELFILE=$TEST_CACHE_PATH/$MODELFILE_NAME
47 MODELFILE_URL="$MODELFILE_SERVER/$MODELFILE_NAME"
48 if [ -n "$FIXED_MODELFILE_SERVER" ]; then
49 MODELFILE_URL="$FIXED_MODELFILE_SERVER/$MODELFILE_NAME"
53 if [ ! -e $TEST_CACHE_PATH ]; then
54 mkdir -p $TEST_CACHE_PATH
57 # Download unless we have it in cache (Also check md5sum)
58 if need_download "$MODELFILE" "$MODELFILE_URL"; then
60 echo "Download test file for $TEST_NAME"
61 echo "======================"
63 rm -f $MODELFILE # Remove invalid file if exists
64 pushd $TEST_CACHE_PATH
65 wget -nv $MODELFILE_URL
66 if [ "${MODELFILE_NAME##*.}" == "zip" ]; then
67 unzip -o $MODELFILE_NAME
83 echo "Usage: $0 --modelfile-server=MODELFILE_SERVER --install-path=INSTALL_DIR"
84 echo " MODELFILE_SERVER : Base URL of the model file server"
85 echo " INSTALL_DIR : Path to be installed"
91 key="$(echo $1 | awk '{print tolower($0)}')"
101 --modelfile-server=*)
102 MODELFILE_SERVER="${1#*=}"
109 INSTALL_DIR="${1#*=}"
112 echo "Invalid option '$1'"
120 if [ -z "$MODELFILE_SERVER" ]; then
121 echo "Please specify a value for --modelfile-server or MODELFILE_SERVER(env)."
126 if [ -z "$INSTALL_DIR" ]; then
127 echo "Please specify a value for --install-dir or INSTALL_DIR(env)."
134 THIS_SCRIPT_DIR=$(realpath $(dirname ${BASH_SOURCE}))
135 source ${THIS_SCRIPT_DIR}/../common.sh
137 CACHE_ROOT_PATH=$INSTALL_DIR
138 FIXED_MODELFILE_SERVER="${MODELFILE_SERVER:-}"
139 TEST_ROOT_PATH=${THIS_SCRIPT_DIR}/models
141 # All models in the directory are the target models
142 pushd ${TEST_ROOT_PATH}
146 download_tests $MODELS