decred.org/dcrdex@v1.0.5/dex/testing/btc/electrumx.sh (about) 1 #!/usr/bin/env bash 2 3 # Devs should install gencerts 4 # go install github.com/decred/dcrd/cmd/gencerts@release-v1.7 5 6 # ./electrumx.sh (Bitcoin/Litecoin) (20556/20566) (54002/55002) 7 8 set -ex 9 10 export COIN="${1:-Bitcoin}" 11 12 case $COIN in 13 Bitcoin) 14 SYMBOL=btc 15 ;; 16 17 Litecoin) 18 SYMBOL=ltc 19 ;; 20 21 *) 22 echo -n "unknown coin" 23 ;; 24 esac 25 26 27 ELECTRUMX_DIR=~/dextest/electrum/${SYMBOL}/server 28 REPO_DIR=${ELECTRUMX_DIR}/electrumx-repo 29 DATA_DIR=${ELECTRUMX_DIR}/data 30 rm -rf ${DATA_DIR} 31 mkdir -p ${REPO_DIR} ${DATA_DIR} 32 33 cd ${REPO_DIR} 34 35 if [ ! -d "${REPO_DIR}/.git" ]; then 36 git init 37 git remote add origin https://github.com/spesmilo/electrumx.git 38 fi 39 40 git fetch --depth 1 origin 914938264e5621ea8980be6d3e69964e7f219d16 41 git reset --hard FETCH_HEAD 42 43 if [ ! -d "${ELECTRUMX_DIR}/venv" ]; then 44 python -m venv ${ELECTRUMX_DIR}/venv 45 fi 46 source ${ELECTRUMX_DIR}/venv/bin/activate 47 python -m ensurepip --upgrade 48 pip install . 49 50 gencerts -L ${DATA_DIR}/ssl.cert ${DATA_DIR}/ssl.key 51 52 set +x 53 54 # Server Config 55 export NET="regtest" 56 export DB_ENGINE="leveldb" 57 export DB_DIRECTORY="${DATA_DIR}" 58 export DAEMON_URL="http://user:pass@127.0.0.1:${2:-20556}" 59 export SERVICES="ssl://localhost:${3:-54002},rpc://" 60 export SSL_CERTFILE="${DATA_DIR}/ssl.cert" 61 export SSL_KEYFILE="${DATA_DIR}/ssl.key" 62 export PEER_DISCOVERY="off" 63 export PEER_ANNOUNCE= 64 ./electrumx_server