Skip to content

Commit 4ccb312

Browse files
committed
parse network-dir in setup.sh
1 parent 7e30729 commit 4ccb312

File tree

2 files changed

+113
-21
lines changed

2 files changed

+113
-21
lines changed

images/utils/launcher/node/xud.py

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -205,7 +205,7 @@ def _save_seed(self, output):
205205
with open(seed_file, "w") as f:
206206
f.write(s)
207207

208-
print(f"[DEV] Xud seed is saved in {self.config.host_network_dir}/seed.txt file")
208+
print(f"[DEV] XUD seed is saved in file {self.config.host_network_dir}/seed.txt")
209209

210210
def _create_wallets(self) -> None:
211211
retry = 3
@@ -246,12 +246,13 @@ def _check_restore_dir(self, value) -> List[str]:
246246
def _get_restore_dir(self) -> str:
247247
restore_dir = self.config.restore_dir
248248

249-
try:
250-
self._check_backup_dir(restore_dir)
251-
return restore_dir
252-
except InvalidDirectory:
253-
restore_dir = None
254-
logger.exception("config.restore_dir is not valid")
249+
if restore_dir:
250+
try:
251+
self._check_backup_dir(restore_dir)
252+
return restore_dir
253+
except InvalidDirectory:
254+
restore_dir = None
255+
logger.exception("config.restore_dir is not valid")
255256

256257
while True:
257258
reply = input("Please paste the path to your XUD backup to restore your channel balance, your keys and other historical data: ")

setup.sh

Lines changed: 105 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,37 @@ BRANCH=master
66
DEV=false
77
DOCKER_REGISTRY="https://registry-1.docker.io"
88
UTILS_TAG="20.10.16"
9+
NETWORK=""
910
HOME_DIR="$HOME/.xud-docker"
11+
SIMNET_DIR="$HOME_DIR/simnet"
12+
TESTNET_DIR="$HOME_DIR/testnet"
13+
MAINNET_DIR="$HOME_DIR/mainnet"
14+
XUD_DOCKER_CONF="$HOME_DIR/xud-docker.conf"
15+
16+
if [[ -e $XUD_DOCKER_CONF ]]; then
17+
function get_value() {
18+
sed -nE "s/^\s*$1 = \"(.+)\"$/\1/p" "$XUD_DOCKER_CONF"
19+
}
20+
# shellcheck disable=2034
21+
home_dir=$HOME_DIR
22+
23+
if VALUE=$(get_value "simnet-dir"); then
24+
SIMNET_DIR=$(eval echo "$VALUE")
25+
fi
26+
if VALUE=$(get_value "testnet-dir"); then
27+
SIMNET_DIR=$(eval echo "$VALUE")
28+
fi
29+
if VALUE=$(get_value "mainnet-dir"); then
30+
SIMNET_DIR=$(eval echo "$VALUE")
31+
fi
32+
unset home_dir
33+
unset VALUE
34+
unset get_value
35+
fi
1036

37+
###############################################################################
38+
# Functions
39+
###############################################################################
1140

1241
function print_help() {
1342
cat <<EOF
@@ -116,7 +145,7 @@ function parse_opts() {
116145
local OPTION VALUE
117146
while [[ $# -gt 0 ]]; do
118147
case $1 in
119-
"-h" | "--help" )
148+
"-h" | "--help")
120149
print_help
121150
exit 1
122151
;;
@@ -127,7 +156,7 @@ function parse_opts() {
127156
OPTION=$1
128157
shift
129158
if [[ $# -eq 0 || $1 =~ ^- ]]; then
130-
echo >&2 "❌ Missing option value: $OPTION"
159+
echo >&2 "Command-line option \"$OPTION\" needs value"
131160
exit 1
132161
fi
133162
VALUE=$1
@@ -138,6 +167,62 @@ function parse_opts() {
138167
DEV=true
139168
shift
140169
;;
170+
"-n" | "--network" )
171+
if [[ $1 =~ = ]]; then
172+
VALUE=$(echo "$1" | cut -d'=' -f2)
173+
else
174+
OPTION=$1
175+
shift
176+
if [[ $# -eq 0 || $1 =~ ^- ]]; then
177+
echo >&2 "Command-line option \"$OPTION\" needs value"
178+
exit 1
179+
fi
180+
VALUE=$1
181+
fi
182+
NETWORK=$VALUE
183+
;;
184+
"--simnet-dir")
185+
if [[ $1 =~ = ]]; then
186+
VALUE=$(echo "$1" | cut -d'=' -f2)
187+
else
188+
OPTION=$1
189+
shift
190+
if [[ $# -eq 0 || $1 =~ ^- ]]; then
191+
echo >&2 "Command-line option \"$OPTION\" needs value"
192+
exit 1
193+
fi
194+
VALUE=$1
195+
fi
196+
SIMNET_DIR=$VALUE
197+
;;
198+
"--testnet-dir")
199+
if [[ $1 =~ = ]]; then
200+
VALUE=$(echo "$1" | cut -d'=' -f2)
201+
else
202+
OPTION=$1
203+
shift
204+
if [[ $# -eq 0 || $1 =~ ^- ]]; then
205+
echo >&2 "Command-line option \"$OPTION\" needs value"
206+
exit 1
207+
fi
208+
VALUE=$1
209+
fi
210+
TESTNET_DIR=$VALUE
211+
;;
212+
"--mainnet-dir")
213+
if [[ $1 =~ = ]]; then
214+
VALUE=$(echo "$1" | cut -d'=' -f2)
215+
else
216+
OPTION=$1
217+
shift
218+
if [[ $# -eq 0 || $1 =~ ^- ]]; then
219+
echo >&2 "Command-line option \"$OPTION\" needs value"
220+
exit 1
221+
fi
222+
VALUE=$1
223+
fi
224+
MAINNET_DIR=$VALUE
225+
;;
141226
*)
142227
shift
143228
esac
@@ -155,17 +240,14 @@ function choose_network() {
155240
case $REPLY in
156241
1 | simnet)
157242
NETWORK=simnet
158-
NETWORK_DIR="$HOME_DIR/simnet"
159243
break
160244
;;
161245
2 | testnet)
162246
NETWORK=testnet
163-
NETWORK_DIR="$HOME_DIR/testnet"
164247
break
165248
;;
166249
3 | mainnet)
167250
NETWORK=mainnet
168-
NETWORK_DIR="$HOME_DIR/mainnet"
169251
break
170252
;;
171253
*)
@@ -370,26 +452,35 @@ function get_utils_name() {
370452
echo "${NETWORK}_utils_${N}"
371453
}
372454

373-
################################################################################
455+
456+
###############################################################################
374457
# MAIN
375-
################################################################################
458+
###############################################################################
376459

377460
LOG_TIMESTAMP="$(date +%F-%H-%M-%S)"
378461

379462
parse_opts "$@"
380463

381-
choose_network
464+
if [[ -z $NETWORK ]]; then
465+
choose_network
466+
fi
467+
468+
case $NETWORK in
469+
simnet)
470+
NETWORK_DIR=$SIMNET_DIR
471+
;;
472+
testnet)
473+
NETWORK_DIR=$TESTNET_DIR
474+
;;
475+
mainnet)
476+
NETWORK_DIR=$MAINNET_DIR
477+
;;
478+
esac
382479

383480
ensure_utils_image
384481

385482
echo "🚀 Launching $NETWORK environment"
386483

387-
388-
389-
# TODO load network dirs from command-line options and xud-docker.conf
390-
391-
392-
393484
docker run --rm -it \
394485
--name "$(get_utils_name)" \
395486
-v /var/run/docker.sock:/var/run/docker.sock \

0 commit comments

Comments
 (0)