github.com/trezor/blockbook@v0.4.1-0.20240328132726-e9a08582ee2c/contrib/scripts/backend-deploy-and-test.sh (about) 1 #!/usr/bin/env bash 2 3 if [ $# -ne 1 ] && [ $# -ne 4 ] 4 then 5 echo -e "Usage:\n\n$(basename $(readlink -f $0)) coin service_name coin_test backend_log_file\n\nor\n\n$(basename $(readlink -f $0)) coin\nin which case service_name, coin_test and backend_log_file are derived from coin or default" 1>&2 6 exit 1 7 fi 8 9 COIN=$1 10 SERVICE=$2 11 COIN_TEST=$3 12 LOGFILE=$4 13 14 [ -z "${BACKEND_TIMEOUT}" ] && BACKEND_TIMEOUT=15s 15 [ -z "${SERVICE}" ] && SERVICE="${COIN}" 16 [ -z "${COIN_TEST}" ] && COIN_TEST="${COIN}=main" 17 [ -z "${LOGFILE}" ] && LOGFILE=debug.log 18 19 echo "Running: $(basename $(readlink -f $0)) ${COIN} ${SERVICE} ${COIN_TEST} ${LOGFILE}" 20 21 rm build/*.deb 22 make "deb-backend-${COIN}" 23 24 PACKAGE=$(ls ./build/backend-${SERVICE}*.deb) 25 [ -z "${PACKAGE}" ] && echo "Package not found" && exit 1 26 27 sudo /usr/bin/dpkg -i "${PACKAGE}" || exit 1 28 sudo /bin/systemctl restart "backend-${SERVICE}" || exit 1 29 30 echo "Waiting for backend startup for ${BACKEND_TIMEOUT}" 31 sudo -u bitcoin /usr/bin/timeout ${BACKEND_TIMEOUT} /usr/bin/tail -f "/opt/coins/data/${COIN}/backend/${LOGFILE}" 32 33 make test-integration ARGS="-v -run=TestIntegration/${COIN_TEST}"